docs: def createRole(self, name, description="", privileges=None):
          """Creates a new role.
          
          Args:
              name (str): The name of the new role.
              description (str): The description of the new role. Defaults to ``""``.
              privileges (str): A comma delimited list of privileges to apply to the new role.
                  Defaults to ``None``.
          Returns:
              If ``privileges`` is ``None``, the result from :py:func:`arcrest.manageorg._portals.Portal.createRole`.
              
              If ``privileges`` were succesfully added, the result from :py:func:`arcrest.manageorg._portals.Roles.setPrivileges`.
              
          """
          admin = None
          portal = None
          setPrivResults = None
          roleID = None
          createResults = None
          try:
              admin = arcrest.manageorg.Administration(securityHandler=self._securityHandler)
              portal = admin.portals.portalSelf
              try:
                  roleID = portal.roles.findRoleID(name)
                  if roleID is None:
                      createResults = portal.createRole(name=name,description=description)
                      if 'success' in createResults:
                          if createResults['success'] == True:
  
                              setPrivResults = portal.roles.setPrivileges(createResults['id'],privileges)
                              if 'success' in setPrivResults:
                                  print ("%s role created" % name)
                              else:
                                  print (setPrivResults)
                          else:
                              print (createResults)
                      else:
                          print (createResults)
                  else:
                      print ("'%s' role already exists" % name)
  
              except Exception as e:
                  print (e)
                  return None
  
  
          except:
              line, filename, synerror = trace()
              raise common.ArcRestHelperError({
                          "function": "createGroup",
                          "line": line,
                          "filename":  filename,
                          "synerror": synerror,
                                          }
                                          )
          finally:
              admin = None
              portal = None
              setPrivResults = None
              roleID = None
              createResults = None
  
              del admin
              del portal
              del setPrivResults
              del roleID
              del createResults
  
              gc.collect()