def suspend_user()

in runner.py [0:0]


  def suspend_user(self, suspend):
    """
    Suspends or un-suspends a user.
    :param: suspend: bool
    """
    msg = ""
    if self.is_valid_user:
      if suspend and self._is_suspended_user():
        msg = "%s - User already suspended" % self.user
      elif suspend and not self._is_suspended_user():
        self.admin_api.suspend(self.user_email)
        msg = "%s - User was suspended" % self.user
      elif not suspend and self._is_suspended_user():
        self.admin_api.un_suspend(self.user_email)
        while self._is_suspended_user():  # workaround for google api delays in propagation
          time.sleep(8)
        msg = "%s - User was un-suspended" % self.user
      elif not suspend and not self._is_suspended_user():
        msg = "%s - User already un-suspended" % self.user
    else:
      msg = "%s - Not a valid LDAP user" % self.user
    log.info(msg)
    return msg