def user_create()

in files/default/rgw_webservice.py [0:0]


    def user_create(self, user, display_name=None, remote_addr=None, region=None, zone=None, access_key=None, secret_key=None, email=None, zone_region_prefix="client.radosgw"):
        # Set the display_name equal to the user id if display_name not passed in!
        if display_name is None:
            display_name = user

        if region is not None and zone is not None:
            cmd = ["sudo", "/bin/radosgw-admin", "user", "create", "--conf", "/etc/ceph/ceph.conf", "--uid", "%s" % user, "--display-name", "%s" % display_name]
        else:
            cmd = ["/usr/bin/radosgw-admin", "user", "create", "--conf", "/etc/ceph/ceph.conf", "--uid", "%s" % user, "--display-name", "%s" % display_name]

        if region is not None and zone is not None:
            cmd.append("-n")
            # NB: This should match '[client.radosgw...]' or something similar found in ceph.conf for the RGW section
            cmd.append("%s.%s-%s" % (zone_region_prefix, region, zone))

        if email is not None:
            cmd.append("--email")
            cmd.append("%s" % email)

        if access_key is not None:
            cmd.append("--access-key")
            cmd.append("%s" % access_key)

        if secret_key is not None:
            # Newer versions of radosgw-admin support --secret-key too
            cmd.append("--secret")
            cmd.append("%s" % secret_key)

        return call(cmd, remote_addr)