docstr: Returns whether the author of the action is a committer or not.
  If the list of committer usernames is not available it will use the
  author_association as a fallback mechanism.
docstr_tok: ["Returns","whether","the","author","of","the","action","is","a","committer","or","not",".","If","the","list","of","committer","usernames","is","not","available","it","will","use","the","author_association","as","a","fallback","mechanism","."]
code: def is_committer(self, action):
      """
      Returns whether the author of the action is a committer or not.
      If the list of committer usernames is not available it will use the
      author_association as a fallback mechanism.
      """
      if self.committers:
          return (
              self.event_payload[action]["user"]["login"]
              in self.committers
          )
      return (
          self.event_payload[action]["author_association"]
          in COMMITTER_ROLES
      )
  
imports: import enum
  import os
  import shlex
  from pathlib import Path
  from functools import lru_cache, partial
  import tempfile
  import click
  import github
  from .utils.git import git
  from .utils.logger import logger
  from .crossbow import Repo, Queue, Config, Target, Job, CommentReport
label_desc: Use image node_id 4 for calling the PullRequestWorkflowBot obj's underlying member method code with example usage: obj.is_committer(action) and returns: unknown, unknown