docs: def createStatus(self,
              repo_user, repo_name, sha, state, target_url=None,
              description=None, context=None):
          """
          :param sha: Full sha to create the status for.
          :param state: one of the following 'pending', 'success', 'error'
                        or 'failure'.
          :param target_url: Target url to associate with this status.
          :param description: Short description of the status.
          :return: A defered with the result from GitHub.
          """
          payload = {'state': state}
  
          if description is not None:
              payload['description'] = description
  
          if target_url is not None:
              payload['target_url'] = target_url
  
          if context is not None:
              payload['context'] = context
  
          return self.api.makeRequest(
              ['repos', repo_user, repo_name, 'statuses', sha],
              method='POST',
              post=payload)