Confluent v2.10.0 published on Wednesday, Nov 20, 2024 by Pulumi
confluentcloud.getUser
Explore with Pulumi AI
confluentcloud.getUser
describes a User data source.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as confluentcloud from "@pulumi/confluentcloud";
export = async () => {
const exampleUsingId = await confluentcloud.getUser({
id: "u-abc123",
});
const exampleUsingEmail = await confluentcloud.getUser({
email: "test123@gmail.com",
});
const test_env = new confluentcloud.Environment("test-env", {displayName: `env_for_${exampleUsingId.fullName}`});
const standard_cluster_on_aws = new confluentcloud.KafkaCluster("standard-cluster-on-aws", {
displayName: "standard_kafka_cluster_on_aws",
availability: "SINGLE_ZONE",
cloud: "AWS",
region: "us-west-2",
standard: {},
environment: {
id: test_env.id,
},
});
const test_role_binding = new confluentcloud.RoleBinding("test-role-binding", {
principal: `User:${exampleUsingEmail.id}`,
roleName: "CloudClusterAdmin",
crnPattern: standard_cluster_on_aws.rbacCrn,
});
const exampleUsingFullName = await confluentcloud.getUser({
fullName: "John Doe",
});
return {
exampleUsingId: exampleUsingId,
};
}
import pulumi
import pulumi_confluentcloud as confluentcloud
example_using_id = confluentcloud.get_user(id="u-abc123")
pulumi.export("exampleUsingId", example_using_id)
example_using_email = confluentcloud.get_user(email="test123@gmail.com")
test_env = confluentcloud.Environment("test-env", display_name=f"env_for_{example_using_id.full_name}")
standard_cluster_on_aws = confluentcloud.KafkaCluster("standard-cluster-on-aws",
display_name="standard_kafka_cluster_on_aws",
availability="SINGLE_ZONE",
cloud="AWS",
region="us-west-2",
standard={},
environment={
"id": test_env.id,
})
test_role_binding = confluentcloud.RoleBinding("test-role-binding",
principal=f"User:{example_using_email.id}",
role_name="CloudClusterAdmin",
crn_pattern=standard_cluster_on_aws.rbac_crn)
example_using_full_name = confluentcloud.get_user(full_name="John Doe")
package main
import (
"fmt"
"github.com/pulumi/pulumi-confluentcloud/sdk/v2/go/confluentcloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleUsingId, err := confluentcloud.GetUser(ctx, &confluentcloud.GetUserArgs{
Id: pulumi.StringRef("u-abc123"),
}, nil)
if err != nil {
return err
}
ctx.Export("exampleUsingId", exampleUsingId)
exampleUsingEmail, err := confluentcloud.GetUser(ctx, &confluentcloud.GetUserArgs{
Email: pulumi.StringRef("test123@gmail.com"),
}, nil)
if err != nil {
return err
}
_, err = confluentcloud.NewEnvironment(ctx, "test-env", &confluentcloud.EnvironmentArgs{
DisplayName: pulumi.Sprintf("env_for_%v", exampleUsingId.FullName),
})
if err != nil {
return err
}
_, err = confluentcloud.NewKafkaCluster(ctx, "standard-cluster-on-aws", &confluentcloud.KafkaClusterArgs{
DisplayName: pulumi.String("standard_kafka_cluster_on_aws"),
Availability: pulumi.String("SINGLE_ZONE"),
Cloud: pulumi.String("AWS"),
Region: pulumi.String("us-west-2"),
Standard: &confluentcloud.KafkaClusterStandardArgs{},
Environment: &confluentcloud.KafkaClusterEnvironmentArgs{
Id: test_env.ID(),
},
})
if err != nil {
return err
}
_, err = confluentcloud.NewRoleBinding(ctx, "test-role-binding", &confluentcloud.RoleBindingArgs{
Principal: pulumi.Sprintf("User:%v", exampleUsingEmail.Id),
RoleName: pulumi.String("CloudClusterAdmin"),
CrnPattern: standard_cluster_on_aws.RbacCrn,
})
if err != nil {
return err
}
_, err = confluentcloud.GetUser(ctx, &confluentcloud.GetUserArgs{
FullName: pulumi.StringRef("John Doe"),
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ConfluentCloud = Pulumi.ConfluentCloud;
return await Deployment.RunAsync(() =>
{
var exampleUsingId = ConfluentCloud.GetUser.Invoke(new()
{
Id = "u-abc123",
});
var exampleUsingEmail = ConfluentCloud.GetUser.Invoke(new()
{
Email = "test123@gmail.com",
});
var test_env = new ConfluentCloud.Environment("test-env", new()
{
DisplayName = $"env_for_{exampleUsingId.Apply(getUserResult => getUserResult.FullName)}",
});
var standard_cluster_on_aws = new ConfluentCloud.KafkaCluster("standard-cluster-on-aws", new()
{
DisplayName = "standard_kafka_cluster_on_aws",
Availability = "SINGLE_ZONE",
Cloud = "AWS",
Region = "us-west-2",
Standard = null,
Environment = new ConfluentCloud.Inputs.KafkaClusterEnvironmentArgs
{
Id = test_env.Id,
},
});
var test_role_binding = new ConfluentCloud.RoleBinding("test-role-binding", new()
{
Principal = $"User:{exampleUsingEmail.Apply(getUserResult => getUserResult.Id)}",
RoleName = "CloudClusterAdmin",
CrnPattern = standard_cluster_on_aws.RbacCrn,
});
var exampleUsingFullName = ConfluentCloud.GetUser.Invoke(new()
{
FullName = "John Doe",
});
return new Dictionary<string, object?>
{
["exampleUsingId"] = exampleUsingId,
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.confluentcloud.ConfluentcloudFunctions;
import com.pulumi.confluentcloud.inputs.GetUserArgs;
import com.pulumi.confluentcloud.Environment;
import com.pulumi.confluentcloud.EnvironmentArgs;
import com.pulumi.confluentcloud.KafkaCluster;
import com.pulumi.confluentcloud.KafkaClusterArgs;
import com.pulumi.confluentcloud.inputs.KafkaClusterStandardArgs;
import com.pulumi.confluentcloud.inputs.KafkaClusterEnvironmentArgs;
import com.pulumi.confluentcloud.RoleBinding;
import com.pulumi.confluentcloud.RoleBindingArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var exampleUsingId = ConfluentcloudFunctions.getUser(GetUserArgs.builder()
.id("u-abc123")
.build());
ctx.export("exampleUsingId", exampleUsingId.applyValue(getUserResult -> getUserResult));
final var exampleUsingEmail = ConfluentcloudFunctions.getUser(GetUserArgs.builder()
.email("test123@gmail.com")
.build());
var test_env = new Environment("test-env", EnvironmentArgs.builder()
.displayName(String.format("env_for_%s", exampleUsingId.applyValue(getUserResult -> getUserResult.fullName())))
.build());
var standard_cluster_on_aws = new KafkaCluster("standard-cluster-on-aws", KafkaClusterArgs.builder()
.displayName("standard_kafka_cluster_on_aws")
.availability("SINGLE_ZONE")
.cloud("AWS")
.region("us-west-2")
.standard()
.environment(KafkaClusterEnvironmentArgs.builder()
.id(test_env.id())
.build())
.build());
var test_role_binding = new RoleBinding("test-role-binding", RoleBindingArgs.builder()
.principal(String.format("User:%s", exampleUsingEmail.applyValue(getUserResult -> getUserResult.id())))
.roleName("CloudClusterAdmin")
.crnPattern(standard_cluster_on_aws.rbacCrn())
.build());
final var exampleUsingFullName = ConfluentcloudFunctions.getUser(GetUserArgs.builder()
.fullName("John Doe")
.build());
}
}
resources:
test-env:
type: confluentcloud:Environment
properties:
displayName: env_for_${exampleUsingId.fullName}
standard-cluster-on-aws:
type: confluentcloud:KafkaCluster
properties:
displayName: standard_kafka_cluster_on_aws
availability: SINGLE_ZONE
cloud: AWS
region: us-west-2
standard: {}
environment:
id: ${["test-env"].id}
test-role-binding:
type: confluentcloud:RoleBinding
properties:
principal: User:${exampleUsingEmail.id}
roleName: CloudClusterAdmin
crnPattern: ${["standard-cluster-on-aws"].rbacCrn}
variables:
exampleUsingId:
fn::invoke:
Function: confluentcloud:getUser
Arguments:
id: u-abc123
exampleUsingEmail:
fn::invoke:
Function: confluentcloud:getUser
Arguments:
email: test123@gmail.com
exampleUsingFullName:
fn::invoke:
Function: confluentcloud:getUser
Arguments:
fullName: John Doe
outputs:
exampleUsingId: ${exampleUsingId}
Using getUser
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getUser(args: GetUserArgs, opts?: InvokeOptions): Promise<GetUserResult>
function getUserOutput(args: GetUserOutputArgs, opts?: InvokeOptions): Output<GetUserResult>
def get_user(email: Optional[str] = None,
full_name: Optional[str] = None,
id: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetUserResult
def get_user_output(email: Optional[pulumi.Input[str]] = None,
full_name: Optional[pulumi.Input[str]] = None,
id: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetUserResult]
func GetUser(ctx *Context, args *GetUserArgs, opts ...InvokeOption) (*GetUserResult, error)
func GetUserOutput(ctx *Context, args *GetUserOutputArgs, opts ...InvokeOption) GetUserResultOutput
> Note: This function is named GetUser
in the Go SDK.
public static class GetUser
{
public static Task<GetUserResult> InvokeAsync(GetUserArgs args, InvokeOptions? opts = null)
public static Output<GetUserResult> Invoke(GetUserInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetUserResult> getUser(GetUserArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
function: confluentcloud:index/getUser:getUser
arguments:
# arguments dictionary
The following arguments are supported:
getUser Result
The following output properties are available:
- Api
Version string - (Required String) An API Version of the schema version of the User.
- Email string
- (Required String) The email address of the User.
- Full
Name string - (Required String) The full name of the User.
- Id string
- (Required String) The ID of the User, for example,
u-abc123
. - Kind string
- (Required String) A kind of the User.
- Api
Version string - (Required String) An API Version of the schema version of the User.
- Email string
- (Required String) The email address of the User.
- Full
Name string - (Required String) The full name of the User.
- Id string
- (Required String) The ID of the User, for example,
u-abc123
. - Kind string
- (Required String) A kind of the User.
- api
Version String - (Required String) An API Version of the schema version of the User.
- email String
- (Required String) The email address of the User.
- full
Name String - (Required String) The full name of the User.
- id String
- (Required String) The ID of the User, for example,
u-abc123
. - kind String
- (Required String) A kind of the User.
- api
Version string - (Required String) An API Version of the schema version of the User.
- email string
- (Required String) The email address of the User.
- full
Name string - (Required String) The full name of the User.
- id string
- (Required String) The ID of the User, for example,
u-abc123
. - kind string
- (Required String) A kind of the User.
- api_
version str - (Required String) An API Version of the schema version of the User.
- email str
- (Required String) The email address of the User.
- full_
name str - (Required String) The full name of the User.
- id str
- (Required String) The ID of the User, for example,
u-abc123
. - kind str
- (Required String) A kind of the User.
- api
Version String - (Required String) An API Version of the schema version of the User.
- email String
- (Required String) The email address of the User.
- full
Name String - (Required String) The full name of the User.
- id String
- (Required String) The ID of the User, for example,
u-abc123
. - kind String
- (Required String) A kind of the User.
Package Details
- Repository
- Confluent Cloud pulumi/pulumi-confluentcloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
confluent
Terraform Provider.