Volcengine v0.0.26 published on Friday, Sep 13, 2024 by Volcengine
volcengine.iam.Roles
Explore with Pulumi AI
Use this data source to query detailed information of iam roles
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Volcengine = Pulumi.Volcengine;
return await Deployment.RunAsync(() =>
{
var foo1 = new Volcengine.Iam.Role("foo1", new()
{
Description = "acc-test1",
DisplayName = "acc-test1",
MaxSessionDuration = 3600,
RoleName = "acc-test-role1",
TrustPolicyDocument = "{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"auto_scaling\"]}}]}",
});
var foo2 = new Volcengine.Iam.Role("foo2", new()
{
Description = "acc-test2",
DisplayName = "acc-test2",
MaxSessionDuration = 3600,
RoleName = "acc-test-role2",
TrustPolicyDocument = "{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"ecs\"]}}]}",
});
var foo = Volcengine.Iam.Roles.Invoke(new()
{
RoleName = $"{foo1.RoleName},{foo2.RoleName}",
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/iam"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
foo1, err := iam.NewRole(ctx, "foo1", &iam.RoleArgs{
Description: pulumi.String("acc-test1"),
DisplayName: pulumi.String("acc-test1"),
MaxSessionDuration: pulumi.Int(3600),
RoleName: pulumi.String("acc-test-role1"),
TrustPolicyDocument: pulumi.String("{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"auto_scaling\"]}}]}"),
})
if err != nil {
return err
}
foo2, err := iam.NewRole(ctx, "foo2", &iam.RoleArgs{
Description: pulumi.String("acc-test2"),
DisplayName: pulumi.String("acc-test2"),
MaxSessionDuration: pulumi.Int(3600),
RoleName: pulumi.String("acc-test-role2"),
TrustPolicyDocument: pulumi.String("{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"ecs\"]}}]}"),
})
if err != nil {
return err
}
_ = iam.RolesOutput(ctx, iam.RolesOutputArgs{
RoleName: pulumi.All(foo1.RoleName, foo2.RoleName).ApplyT(func(_args []interface{}) (string, error) {
foo1RoleName := _args[0].(string)
foo2RoleName := _args[1].(string)
return fmt.Sprintf("%v,%v", foo1RoleName, foo2RoleName), nil
}).(pulumi.StringOutput),
}, nil)
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.volcengine.iam.Role;
import com.pulumi.volcengine.iam.RoleArgs;
import com.pulumi.volcengine.iam.IamFunctions;
import com.pulumi.volcengine.iam.inputs.RolesArgs;
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) {
var foo1 = new Role("foo1", RoleArgs.builder()
.description("acc-test1")
.displayName("acc-test1")
.maxSessionDuration(3600)
.roleName("acc-test-role1")
.trustPolicyDocument("{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"auto_scaling\"]}}]}")
.build());
var foo2 = new Role("foo2", RoleArgs.builder()
.description("acc-test2")
.displayName("acc-test2")
.maxSessionDuration(3600)
.roleName("acc-test-role2")
.trustPolicyDocument("{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"ecs\"]}}]}")
.build());
final var foo = IamFunctions.Roles(RolesArgs.builder()
.roleName(Output.tuple(foo1.roleName(), foo2.roleName()).applyValue(values -> {
var foo1RoleName = values.t1;
var foo2RoleName = values.t2;
return String.format("%s,%s", foo1RoleName,foo2RoleName);
}))
.build());
}
}
import pulumi
import pulumi_volcengine as volcengine
foo1 = volcengine.iam.Role("foo1",
description="acc-test1",
display_name="acc-test1",
max_session_duration=3600,
role_name="acc-test-role1",
trust_policy_document="{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"auto_scaling\"]}}]}")
foo2 = volcengine.iam.Role("foo2",
description="acc-test2",
display_name="acc-test2",
max_session_duration=3600,
role_name="acc-test-role2",
trust_policy_document="{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"ecs\"]}}]}")
foo = volcengine.iam.roles_output(role_name=pulumi.Output.all(foo1.role_name, foo2.role_name).apply(lambda foo1Role_name, foo2Role_name: f"{foo1_role_name},{foo2_role_name}"))
import * as pulumi from "@pulumi/pulumi";
import * as volcengine from "@pulumi/volcengine";
import * as volcengine from "@volcengine/pulumi";
const foo1 = new volcengine.iam.Role("foo1", {
description: "acc-test1",
displayName: "acc-test1",
maxSessionDuration: 3600,
roleName: "acc-test-role1",
trustPolicyDocument: "{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"auto_scaling\"]}}]}",
});
const foo2 = new volcengine.iam.Role("foo2", {
description: "acc-test2",
displayName: "acc-test2",
maxSessionDuration: 3600,
roleName: "acc-test-role2",
trustPolicyDocument: "{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":[\"sts:AssumeRole\"],\"Principal\":{\"Service\":[\"ecs\"]}}]}",
});
const foo = volcengine.iam.RolesOutput({
roleName: pulumi.interpolate`${foo1.roleName},${foo2.roleName}`,
});
resources:
foo1:
type: volcengine:iam:Role
properties:
description: acc-test1
displayName: acc-test1
maxSessionDuration: 3600
roleName: acc-test-role1
trustPolicyDocument: '{"Statement":[{"Effect":"Allow","Action":["sts:AssumeRole"],"Principal":{"Service":["auto_scaling"]}}]}'
foo2:
type: volcengine:iam:Role
properties:
description: acc-test2
displayName: acc-test2
maxSessionDuration: 3600
roleName: acc-test-role2
trustPolicyDocument: '{"Statement":[{"Effect":"Allow","Action":["sts:AssumeRole"],"Principal":{"Service":["ecs"]}}]}'
variables:
foo:
fn::invoke:
Function: volcengine:iam:Roles
Arguments:
roleName: ${foo1.roleName},${foo2.roleName}
Using Roles
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 roles(args: RolesArgs, opts?: InvokeOptions): Promise<RolesResult>
function rolesOutput(args: RolesOutputArgs, opts?: InvokeOptions): Output<RolesResult>
def roles(name_regex: Optional[str] = None,
output_file: Optional[str] = None,
query: Optional[str] = None,
role_name: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> RolesResult
def roles_output(name_regex: Optional[pulumi.Input[str]] = None,
output_file: Optional[pulumi.Input[str]] = None,
query: Optional[pulumi.Input[str]] = None,
role_name: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[RolesResult]
func Roles(ctx *Context, args *RolesArgs, opts ...InvokeOption) (*RolesResult, error)
func RolesOutput(ctx *Context, args *RolesOutputArgs, opts ...InvokeOption) RolesResultOutput
public static class Roles
{
public static Task<RolesResult> InvokeAsync(RolesArgs args, InvokeOptions? opts = null)
public static Output<RolesResult> Invoke(RolesInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<RolesResult> roles(RolesArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
function: volcengine:iam:Roles
arguments:
# arguments dictionary
The following arguments are supported:
- Name
Regex string - A Name Regex of Role.
- Output
File string - File name where to save data source results.
- Query string
- The query field of Role.
- Role
Name string - The name of the Role, comma separated.
- Name
Regex string - A Name Regex of Role.
- Output
File string - File name where to save data source results.
- Query string
- The query field of Role.
- Role
Name string - The name of the Role, comma separated.
- name
Regex String - A Name Regex of Role.
- output
File String - File name where to save data source results.
- query String
- The query field of Role.
- role
Name String - The name of the Role, comma separated.
- name
Regex string - A Name Regex of Role.
- output
File string - File name where to save data source results.
- query string
- The query field of Role.
- role
Name string - The name of the Role, comma separated.
- name_
regex str - A Name Regex of Role.
- output_
file str - File name where to save data source results.
- query str
- The query field of Role.
- role_
name str - The name of the Role, comma separated.
- name
Regex String - A Name Regex of Role.
- output
File String - File name where to save data source results.
- query String
- The query field of Role.
- role
Name String - The name of the Role, comma separated.
Roles Result
The following output properties are available:
- Id string
- The provider-assigned unique ID for this managed resource.
- Roles
List<Roles
Role> - The collection of Role query.
- Total
Count int - The total count of Role query.
- Name
Regex string - Output
File string - Query string
- Role
Name string - The name of the Role.
- Id string
- The provider-assigned unique ID for this managed resource.
- Roles
[]Roles
Role - The collection of Role query.
- Total
Count int - The total count of Role query.
- Name
Regex string - Output
File string - Query string
- Role
Name string - The name of the Role.
- id String
- The provider-assigned unique ID for this managed resource.
- roles
List<Roles
Role> - The collection of Role query.
- total
Count Integer - The total count of Role query.
- name
Regex String - output
File String - query String
- role
Name String - The name of the Role.
- id string
- The provider-assigned unique ID for this managed resource.
- roles
Roles
Role[] - The collection of Role query.
- total
Count number - The total count of Role query.
- name
Regex string - output
File string - query string
- role
Name string - The name of the Role.
- id str
- The provider-assigned unique ID for this managed resource.
- roles
Sequence[Roles
Role] - The collection of Role query.
- total_
count int - The total count of Role query.
- name_
regex str - output_
file str - query str
- role_
name str - The name of the Role.
- id String
- The provider-assigned unique ID for this managed resource.
- roles List<Property Map>
- The collection of Role query.
- total
Count Number - The total count of Role query.
- name
Regex String - output
File String - query String
- role
Name String - The name of the Role.
Supporting Types
RolesRole
- Create
Date string - The create time of the Role.
- Description string
- The description of the Role.
- Id string
- The ID of the Role.
- Role
Name string - The name of the Role, comma separated.
- Trn string
- The resource name of the Role.
- Trust
Policy stringDocument - The trust policy document of the Role.
- Create
Date string - The create time of the Role.
- Description string
- The description of the Role.
- Id string
- The ID of the Role.
- Role
Name string - The name of the Role, comma separated.
- Trn string
- The resource name of the Role.
- Trust
Policy stringDocument - The trust policy document of the Role.
- create
Date String - The create time of the Role.
- description String
- The description of the Role.
- id String
- The ID of the Role.
- role
Name String - The name of the Role, comma separated.
- trn String
- The resource name of the Role.
- trust
Policy StringDocument - The trust policy document of the Role.
- create
Date string - The create time of the Role.
- description string
- The description of the Role.
- id string
- The ID of the Role.
- role
Name string - The name of the Role, comma separated.
- trn string
- The resource name of the Role.
- trust
Policy stringDocument - The trust policy document of the Role.
- create_
date str - The create time of the Role.
- description str
- The description of the Role.
- id str
- The ID of the Role.
- role_
name str - The name of the Role, comma separated.
- trn str
- The resource name of the Role.
- trust_
policy_ strdocument - The trust policy document of the Role.
- create
Date String - The create time of the Role.
- description String
- The description of the Role.
- id String
- The ID of the Role.
- role
Name String - The name of the Role, comma separated.
- trn String
- The resource name of the Role.
- trust
Policy StringDocument - The trust policy document of the Role.
Package Details
- Repository
- volcengine volcengine/pulumi-volcengine
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
volcengine
Terraform Provider.