Ejemplo n.º 1
0
        public void Handle(PullRequestInfoModel pullRequestInfoModel)
        {
            if (!IsPullRequestClosedByMerge(pullRequestInfoModel))
            {
                return;
            }

            var headBranchName = pullRequestInfoModel.GetHeadBranchName();

            if (IsAutomergeBotTempBranch(headBranchName))
            {
                _logger.LogInformation("Removing temporary branch {branchName} merged by pull request {pullRequestNumber}", headBranchName, pullRequestInfoModel.Number);
                RemoveBranch(headBranchName);
            }
        }
        private void HandlePullRequestEvent(HttpContext context, string payloadJson)
        {
            var pullrequestPayload   = JsonConvert.DeserializeObject <JObject>(payloadJson);
            var pullRequestHandler   = context.RequestServices.GetRequiredService <TempBranchesRemoving.ITempBranchesRemoverPullRequestHandler>();
            var pullRequestInfoModel = PullRequestInfoModel.CreateFromPayload(pullrequestPayload);

            _logger.LogInformation("Started processing pull_request notification {@payloadModel}", pullRequestInfoModel);
            try
            {
                pullRequestHandler.Handle(pullRequestInfoModel);
            }
            finally
            {
                _logger.LogInformation("Finished processing pull_request notification");
            }
        }
Ejemplo n.º 3
0
 private static bool IsPullRequestClosedByMerge(PullRequestInfoModel pullRequestInfoModel)
 {
     return(pullRequestInfoModel.IsClosedAction && pullRequestInfoModel.Merged);
 }