예제 #1
0
        public ReleaseModel1 ReleaseCount(string projectName)
        {
            //
            ReleaseModel1 testData    = new ReleaseModel1();
            ReleaseModel1 ReleaseList = new ReleaseModel1();

            try
            {
                string api = string.Format("https://vsrm.dev.azure.com/{0}/{1}/_apis/Release/releases?$expand=Environments&api-version=5.1", Org.OrganizationName, projectName);//Org.ProjectName);
                using (var client = new HttpClient())
                {
                    client.DefaultRequestHeaders.Accept.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Org.pat);//Org.pat);
                    HttpResponseMessage response = client.GetAsync(api).Result;

                    if (response.IsSuccessStatusCode)
                    {
                        var obj = response.Content.ReadAsStringAsync().Result;

                        testData = JsonConvert.DeserializeObject <ReleaseModel1>(obj);
                    }
                }
            }

            catch (Exception ex)
            {
            }
            return(testData);
        }
예제 #2
0
        public object Release(string projectname)
        {
            Session.Remove("ReleaseCount");
            ReleaseModel1 releseCount = logic.ReleaseCount(projectname);

            Session["ReleaseCount"] = releseCount.count;
            ViewBag.ReleaseCount    = releseCount.count;
            List <ValueRelease> releasestore = logic.Release(projectname);
            string output = JsonConvert.SerializeObject(releseCount);

            return(output);
        }
예제 #3
0
        public List <ValueRelease> Release(string projectName)
        {
            //
            List <ValueRelease> ReleaseList = new List <ValueRelease>();

            try
            {
                string api = string.Format("https://vsrm.dev.azure.com/{0}/{1}/_apis/Release/releases?$expand=Environments&api-version=5.1", Org.OrganizationName, projectName);//Org.ProjectName);
                using (var client = new HttpClient())
                {
                    client.DefaultRequestHeaders.Accept.Clear();
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Org.pat);//Org.pat);
                    HttpResponseMessage response = client.GetAsync(api).Result;

                    if (response.IsSuccessStatusCode)
                    {
                        var obj = response.Content.ReadAsStringAsync().Result;

                        ReleaseModel1 testData = JsonConvert.DeserializeObject <ReleaseModel1>(obj);

                        foreach (var data in testData.value)
                        {
                            foreach (var data1 in data.environments)
                            {
                                foreach (var data2 in data1.deploySteps)
                                {
                                    foreach (var data3 in data1.deploySteps)
                                    {
                                        foreach (var data4 in data3.releaseDeployPhases)
                                        {
                                            if (data4.status == "failed")
                                            {
                                                ReleaseList.Add(data);
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    else
                    {
                        var Message = response.Content.ReadAsStringAsync();
                    }
                }
            }
            catch (Exception ex)
            {
            }
            return(ReleaseList);
        }