getIamCustomRole

Get information about a Google Cloud Project IAM Custom Role. Note that you must have the roles/iam.roleViewer role (or equivalent permissions) at the project level to use this datasource.

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const example = gcp.projects.getIamCustomRole({
project: "your-project-id",
roleId: "your-role-id",
});
const project = new gcp.projects.IAMMember("project", {
project: "your-project-id",
role: example.then(example => example.name),
member: "user:jane@example.com",
});
import pulumi
import pulumi_gcp as gcp
example = gcp.projects.get_iam_custom_role(project="your-project-id",
role_id="your-role-id")
project = gcp.projects.IAMMember("project",
project="your-project-id",
role=example.name,
member="user:jane@example.com")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var example = Gcp.Projects.GetIamCustomRole.Invoke(new()
{
Project = "your-project-id",
RoleId = "your-role-id",
});
var project = new Gcp.Projects.IAMMember("project", new()
{
Project = "your-project-id",
Role = example.Apply(getIamCustomRoleResult => getIamCustomRoleResult.Name),
Member = "user:jane@example.com",
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/projects"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := projects.GetIamCustomRole(ctx, &projects.GetIamCustomRoleArgs{
Project: pulumi.StringRef("your-project-id"),
RoleId: "your-role-id",
}, nil)
if err != nil {
return err
}
_, err = projects.NewIAMMember(ctx, "project", &projects.IAMMemberArgs{
Project: pulumi.String("your-project-id"),
Role: pulumi.String(example.Name),
Member: pulumi.String("user:jane@example.com"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.projects.ProjectsFunctions;
import com.pulumi.gcp.projects.inputs.GetIamCustomRoleArgs;
import com.pulumi.gcp.projects.IAMMember;
import com.pulumi.gcp.projects.IAMMemberArgs;
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 example = ProjectsFunctions.getIamCustomRole(GetIamCustomRoleArgs.builder()
.project("your-project-id")
.roleId("your-role-id")
.build());
var project = new IAMMember("project", IAMMemberArgs.builder()
.project("your-project-id")
.role(example.name())
.member("user:jane@example.com")
.build());
}
}
resources:
project:
type: gcp:projects:IAMMember
properties:
project: your-project-id
role: ${example.name}
member: user:jane@example.com
variables:
example:
fn::invoke:
function: gcp:projects:getIamCustomRole
arguments:
project: your-project-id
roleId: your-role-id

Return

A collection of values returned by getIamCustomRole.

Parameters

argument

A collection of arguments for invoking getIamCustomRole.


suspend fun getIamCustomRole(project: String? = null, roleId: String): GetIamCustomRoleResult

Return

A collection of values returned by getIamCustomRole.

Parameters

project

The project were the custom role has been created in. Defaults to the provider project configuration.

roleId

The role id that has been used for this role.

See also


Return

A collection of values returned by getIamCustomRole.

Parameters

argument

Builder for com.pulumi.gcp.projects.kotlin.inputs.GetIamCustomRolePlainArgs.

See also