get Iam Custom Role
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",
});
Content copied to clipboard
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")
Content copied to clipboard
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",
});
});
Content copied to clipboard
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
})
}
Content copied to clipboard
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());
}
}
Content copied to clipboard
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
Content copied to clipboard
Return
A collection of values returned by getIamCustomRole.
Parameters
argument
A collection of arguments for invoking getIamCustomRole.
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.
role Id
The role id that has been used for this role.
See also
suspend fun getIamCustomRole(argument: suspend GetIamCustomRolePlainArgsBuilder.() -> Unit): GetIamCustomRoleResult
Return
A collection of values returned by getIamCustomRole.
Parameters
argument
Builder for com.pulumi.gcp.projects.kotlin.inputs.GetIamCustomRolePlainArgs.