Exemplo n.º 1
0
        public async Task <string> UpdatePullRequestAsync(string pullRequestUrl, string assetsProducedInCommit, string branch, IEnumerable <Microsoft.DotNet.DarcLib.AssetData> assetsToUpdate, string pullRequestTitle = null, string pullRequestDescription = null)
        {
            CheckForValidGitClient();
            _logger.LogInformation($"Updating pull request '{pullRequestUrl}'...");

            string linkToPr = null;

            string repoUri = await _gitClient.GetPullRequestRepo(pullRequestUrl);

            string pullRequestBaseBranch = await _gitClient.GetPullRequestBaseBranch(pullRequestUrl);

            IEnumerable <DependencyDetail> itemsToUpdate = await GetRequiredUpdatesAsync(repoUri, branch, assetsProducedInCommit, assetsToUpdate);

            await CommitFilesForPullRequestAsync(repoUri, branch, assetsProducedInCommit, itemsToUpdate, pullRequestBaseBranch);

            linkToPr = await _gitClient.UpdatePullRequestAsync(pullRequestUrl, branch, pullRequestBaseBranch, pullRequestTitle, pullRequestDescription);

            _logger.LogInformation($"Updating dependencies in repo '{repoUri}' and branch '{branch}' succeeded! PR link is: {linkToPr}");

            return(linkToPr);
        }