public IEnumerable <WebApiRelease> ListAllReleasesForReleaseDefinition() { string projectName = ClientSampleHelpers.FindAnyProject(this.Context).Name; // Get a release client instance VssConnection connection = Context.Connection; ReleaseHttpClient2 releaseClient = connection.GetClient <ReleaseHttpClient2>(); List <WebApiRelease> releases = releaseClient.GetReleasesAsync(project: projectName, definitionId: newlyCreatedReleaseDefinitionId).Result; // Show releases foreach (WebApiRelease release in releases) { Context.Log("{0} {1} {2}", release.Id.ToString().PadLeft(6), release.Status, release.ReleaseDefinitionReference.Name); } return(releases); }
public IEnumerable <WebApiRelease> ListAllReleases() { string projectName = ClientSampleHelpers.FindAnyProject(this.Context).Name; // Get a release client instance VssConnection connection = Context.Connection; ReleaseHttpClient2 releaseClient = connection.GetClient <ReleaseHttpClient2>(); List <WebApiRelease> releases = releaseClient.GetReleasesAsync(project: projectName).Result; // Show the releases foreach (WebApiRelease release in releases) { Console.WriteLine("{0} {1}", release.Id.ToString().PadLeft(6), release.Status); } return(releases); }
static void Main(string[] args) { Console.WriteLine("========== Usage (Cancel all InProgress or NotDeployed deployments between two given number of days) ==================="); Console.WriteLine(""); Console.WriteLine("OneDriveCancelReleases.exe <ServerUrl> <ProjectName> <DefinitionId> <NumberOfDaysBefore> <NumberOfDaysAfter>"); Console.WriteLine("e.g. OneDriveCancelReleases.exe https://anjani1.visualstudio.com \"My Project\" 62 30 60"); Console.WriteLine(""); Console.WriteLine("===================================="); if (args.Length != 5) { Console.WriteLine("All arguments are not specified. Please refer the usage instructions"); } url = args[0]; projectName = args[1]; if (!int.TryParse(args[2], out definitionId)) { Console.WriteLine("Definition Id should be an integer"); } if (!int.TryParse(args[3], out numberOfDaysBefore)) { Console.WriteLine("NumberOfDaysToDelete Id should be an integer"); } if (!int.TryParse(args[4], out numberOfDaysAfter)) { Console.WriteLine("NumberOfDaysToDelete Id should be an integer"); } Uri serverUrl = new Uri(url); VssCredentials credentials = new VssClientCredentials(); credentials.Storage = new VssClientCredentialStorage(); VssConnection connection = new VssConnection(serverUrl, credentials); ReleaseHttpClient2 rmClient = connection.GetClient <ReleaseHttpClient2>(); CancelAllInProgressReleases(rmClient); }
public IEnumerable <ReleaseApproval> ListPendingApprovalsForASpecificARelease() { string projectName = ClientSampleHelpers.FindAnyProject(this.Context).Name; // Get a release client instance VssConnection connection = Context.Connection; ReleaseHttpClient2 releaseClient = connection.GetClient <ReleaseHttpClient2>(); var releases = releaseClient.GetReleasesAsync(project: projectName).Result; int releaseIdFilter = releases.FirstOrDefault().Id; List <ReleaseApproval> releaseApprovals = new List <ReleaseApproval>(); // Iterate (as needed) to get the full set of approvals int continuationToken = 0; bool parseResult; do { IPagedCollection <ReleaseApproval> releaseApprovalsPage = releaseClient.GetApprovalsAsync2(project: projectName, releaseIdsFilter: new List <int> { releaseIdFilter }, continuationToken: continuationToken).Result; releaseApprovals.AddRange(releaseApprovalsPage); int parsedContinuationToken = 0; parseResult = int.TryParse(releaseApprovalsPage.ContinuationToken, out parsedContinuationToken); if (parseResult) { continuationToken = parsedContinuationToken; } } while ((continuationToken != 0) && parseResult); // Show the approvals foreach (ReleaseApproval releaseApproval in releaseApprovals) { Console.WriteLine("{0} {1}", releaseApproval.Id.ToString().PadLeft(6), releaseApproval.Status); } return(releaseApprovals); }
public IEnumerable <Deployment> ListAllDeploymentsForASpecificReleaseDefinitionId() { string projectName = ClientSampleHelpers.FindAnyProject(this.Context).Name; // Get a release client instance VssConnection connection = Context.Connection; ReleaseHttpClient2 releaseClient = connection.GetClient <ReleaseHttpClient2>(); List <ReleaseDefinition> releaseDefinitions = releaseClient.GetReleaseDefinitionsAsync(project: projectName).Result; int releaseDefinitionId = releaseDefinitions.FirstOrDefault().Id; List <Deployment> deployments = new List <Deployment>(); // Iterate (as needed) to get the full set of deployments int continuationToken = 0; bool parseResult; do { IPagedCollection <Deployment> releaseDeploymentsPage = releaseClient.GetDeploymentsAsync2(project: projectName, definitionId: releaseDefinitionId, continuationToken: continuationToken).Result; deployments.AddRange(releaseDeploymentsPage); int parsedContinuationToken = 0; parseResult = int.TryParse(releaseDeploymentsPage.ContinuationToken, out parsedContinuationToken); if (parseResult) { continuationToken = parsedContinuationToken; } } while ((continuationToken != 0) && parseResult); // Show the deployments foreach (Deployment deployment in deployments) { Context.Log("{0} {1}", deployment.Id.ToString().PadLeft(6), deployment.DeploymentStatus); } return(deployments); }
public IEnumerable <ReleaseApproval> ListPendingApprovalsForASpecificUser() { string projectName = ClientSampleHelpers.FindAnyProject(this.Context).Name; string assignedToFilter = ClientSampleHelpers.GetCurrentUserDisplayName(this.Context); // Get a release client instance VssConnection connection = Context.Connection; ReleaseHttpClient2 releaseClient = connection.GetClient <ReleaseHttpClient2>(); List <ReleaseApproval> releaseApprovals = new List <ReleaseApproval>(); // Iterate (as needed) to get the full set of approvals int continuationToken = 0; bool parseResult; do { IPagedCollection <ReleaseApproval> releaseApprovalsPage = releaseClient.GetApprovalsAsync2(project: projectName, assignedToFilter: assignedToFilter, continuationToken: continuationToken).Result; releaseApprovals.AddRange(releaseApprovalsPage); int parsedContinuationToken = 0; parseResult = int.TryParse(releaseApprovalsPage.ContinuationToken, out parsedContinuationToken); if (parseResult) { continuationToken = parsedContinuationToken; } } while ((continuationToken != 0) && parseResult); // Show the approvals foreach (ReleaseApproval releaseApproval in releaseApprovals) { Context.Log("{0} {1}", releaseApproval.Id.ToString().PadLeft(6), releaseApproval.Status); } return(releaseApprovals); }