diff --git a/src/main/java/org/keycloak/gh/bot/BugActionsOnComment.java b/src/main/java/org/keycloak/gh/bot/BugActionsOnComment.java index 9297ce6..30effbd 100644 --- a/src/main/java/org/keycloak/gh/bot/BugActionsOnComment.java +++ b/src/main/java/org/keycloak/gh/bot/BugActionsOnComment.java @@ -7,6 +7,10 @@ import org.keycloak.gh.bot.labels.Kind; import org.keycloak.gh.bot.utils.Labels; import org.kohsuke.github.GHEventPayload; +import org.kohsuke.github.GHIssue; +import org.kohsuke.github.GHIssueComment; +import org.kohsuke.github.GHIssueState; +import org.kohsuke.github.GHOrganization; import org.kohsuke.github.GHUser; import java.io.IOException; @@ -19,12 +23,16 @@ public class BugActionsOnComment { BugActions bugActions; void onCommentCreated(@IssueComment.Created GHEventPayload.IssueComment payload) throws IOException { - if (Labels.hasLabel(payload.getIssue(), Kind.BUG.toLabel())) { - Action action = getAction(payload.getComment().getBody()); + GHIssue issue = payload.getIssue(); + + if (issue.getState().equals(GHIssueState.OPEN) && Labels.hasLabel(issue, Kind.BUG.toLabel())) { + GHIssueComment comment = payload.getComment(); + Action action = getAction(comment.getBody()); if (action != null) { GHUser sender = payload.getSender(); - if (sender.getType().equals("User") && sender.isMemberOf(payload.getOrganization())) { - bugActions.runAction(action, payload.getIssue()); + GHOrganization organization = payload.getOrganization(); + if (sender.getType().equals("User") && sender.isMemberOf(organization)) { + bugActions.runAction(action, issue); } } } diff --git a/src/main/java/org/keycloak/gh/bot/BugActionsOnLabel.java b/src/main/java/org/keycloak/gh/bot/BugActionsOnLabel.java index 5bd7fe7..0ba7b83 100644 --- a/src/main/java/org/keycloak/gh/bot/BugActionsOnLabel.java +++ b/src/main/java/org/keycloak/gh/bot/BugActionsOnLabel.java @@ -5,6 +5,7 @@ import org.keycloak.gh.bot.labels.Action; import org.kohsuke.github.GHEventPayload; import org.kohsuke.github.GHIssue; +import org.kohsuke.github.GHIssueState; import java.io.IOException; @@ -17,7 +18,7 @@ void onLabeled(@Issue.Labeled GHEventPayload.Issue payload) throws IOException { String label = payload.getLabel().getName(); GHIssue issue = payload.getIssue(); - if (Action.isInstance(label)) { + if (issue.getState().equals(GHIssueState.OPEN) && Action.isInstance(label)) { Action action = Action.fromLabel(label); bugActions.runAction(action, issue); }