docs: def useradd(pwfile, user, password, opts='', runas=None):
      '''
      Add a user to htpasswd file using the htpasswd command. If the htpasswd
      file does not exist, it will be created.
  
      pwfile
          Path to htpasswd file
  
      user
          User name
  
      password
          User password
  
      opts
          Valid options that can be passed are:
  
              - `n`  Don't update file; display results on stdout.
              - `m`  Force MD5 encryption of the password (default).
              - `d`  Force CRYPT encryption of the password.
              - `p`  Do not encrypt the password (plaintext).
              - `s`  Force SHA encryption of the password.
  
      runas
          The system user to run htpasswd command with
  
      CLI Examples:
  
      .. code-block:: bash
  
          salt '*' webutil.useradd /etc/httpd/htpasswd larry badpassword
          salt '*' webutil.useradd /etc/httpd/htpasswd larry badpass opts=ns
      '''
      if not os.path.exists(pwfile):
          opts += 'c'
  
      cmd = ['htpasswd', '-b{0}'.format(opts), pwfile, user, password]
      return __salt__['cmd.run_all'](cmd, runas=runas, python_shell=False)