1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. ram
  5. RoleAttachment
Alibaba Cloud v3.51.0 published on Saturday, Mar 23, 2024 by Pulumi

alicloud.ram.RoleAttachment

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.51.0 published on Saturday, Mar 23, 2024 by Pulumi

    Provides a RAM role attachment resource to bind role for several ECS instances.

    NOTE: Available since v1.0.0+.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const defaultZones = alicloud.getZones({
        availableDiskCategory: "cloud_efficiency",
        availableResourceCreation: "VSwitch",
    });
    const defaultInstanceTypes = defaultZones.then(defaultZones => alicloud.ecs.getInstanceTypes({
        availabilityZone: defaultZones.zones?.[0]?.id,
        cpuCoreCount: 2,
        memorySize: 4,
    }));
    const defaultImages = alicloud.ecs.getImages({
        nameRegex: "^ubuntu_18.*64",
        mostRecent: true,
        owners: "system",
    });
    const config = new pulumi.Config();
    const name = config.get("name") || "ecsInstanceVPCExample";
    const defaultNetwork = new alicloud.vpc.Network("defaultNetwork", {
        vpcName: name,
        cidrBlock: "172.16.0.0/16",
    });
    const defaultSwitch = new alicloud.vpc.Switch("defaultSwitch", {
        vpcId: defaultNetwork.id,
        cidrBlock: "172.16.0.0/24",
        zoneId: defaultZones.then(defaultZones => defaultZones.zones?.[0]?.id),
        vswitchName: name,
    });
    const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("defaultSecurityGroup", {vpcId: defaultNetwork.id});
    const defaultSecurityGroupRule = new alicloud.ecs.SecurityGroupRule("defaultSecurityGroupRule", {
        type: "ingress",
        ipProtocol: "tcp",
        nicType: "intranet",
        policy: "accept",
        portRange: "22/22",
        priority: 1,
        securityGroupId: defaultSecurityGroup.id,
        cidrIp: "172.16.0.0/24",
    });
    const foo = new alicloud.ecs.Instance("foo", {
        vswitchId: defaultSwitch.id,
        imageId: defaultImages.then(defaultImages => defaultImages.images?.[0]?.id),
        instanceType: defaultInstanceTypes.then(defaultInstanceTypes => defaultInstanceTypes.instanceTypes?.[0]?.id),
        systemDiskCategory: "cloud_efficiency",
        internetChargeType: "PayByTraffic",
        internetMaxBandwidthOut: 5,
        securityGroups: [defaultSecurityGroup.id],
        instanceName: name,
    });
    const role = new alicloud.ram.Role("role", {
        document: `  {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "Service": [
                "ecs.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }
    
    `,
        description: "this is a test",
        force: true,
    });
    const attach = new alicloud.ram.RoleAttachment("attach", {
        roleName: role.name,
        instanceIds: [foo].map(__item => __item.id),
    });
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    default_zones = alicloud.get_zones(available_disk_category="cloud_efficiency",
        available_resource_creation="VSwitch")
    default_instance_types = alicloud.ecs.get_instance_types(availability_zone=default_zones.zones[0].id,
        cpu_core_count=2,
        memory_size=4)
    default_images = alicloud.ecs.get_images(name_regex="^ubuntu_18.*64",
        most_recent=True,
        owners="system")
    config = pulumi.Config()
    name = config.get("name")
    if name is None:
        name = "ecsInstanceVPCExample"
    default_network = alicloud.vpc.Network("defaultNetwork",
        vpc_name=name,
        cidr_block="172.16.0.0/16")
    default_switch = alicloud.vpc.Switch("defaultSwitch",
        vpc_id=default_network.id,
        cidr_block="172.16.0.0/24",
        zone_id=default_zones.zones[0].id,
        vswitch_name=name)
    default_security_group = alicloud.ecs.SecurityGroup("defaultSecurityGroup", vpc_id=default_network.id)
    default_security_group_rule = alicloud.ecs.SecurityGroupRule("defaultSecurityGroupRule",
        type="ingress",
        ip_protocol="tcp",
        nic_type="intranet",
        policy="accept",
        port_range="22/22",
        priority=1,
        security_group_id=default_security_group.id,
        cidr_ip="172.16.0.0/24")
    foo = alicloud.ecs.Instance("foo",
        vswitch_id=default_switch.id,
        image_id=default_images.images[0].id,
        instance_type=default_instance_types.instance_types[0].id,
        system_disk_category="cloud_efficiency",
        internet_charge_type="PayByTraffic",
        internet_max_bandwidth_out=5,
        security_groups=[default_security_group.id],
        instance_name=name)
    role = alicloud.ram.Role("role",
        document="""  {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "Service": [
                "ecs.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }
    
    """,
        description="this is a test",
        force=True)
    attach = alicloud.ram.RoleAttachment("attach",
        role_name=role.name,
        instance_ids=[__item.id for __item in [foo]])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ram"
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
    defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
    AvailableDiskCategory: pulumi.StringRef("cloud_efficiency"),
    AvailableResourceCreation: pulumi.StringRef("VSwitch"),
    }, nil);
    if err != nil {
    return err
    }
    defaultInstanceTypes, err := ecs.GetInstanceTypes(ctx, &ecs.GetInstanceTypesArgs{
    AvailabilityZone: pulumi.StringRef(defaultZones.Zones[0].Id),
    CpuCoreCount: pulumi.IntRef(2),
    MemorySize: pulumi.Float64Ref(4),
    }, nil);
    if err != nil {
    return err
    }
    defaultImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
    NameRegex: pulumi.StringRef("^ubuntu_18.*64"),
    MostRecent: pulumi.BoolRef(true),
    Owners: pulumi.StringRef("system"),
    }, nil);
    if err != nil {
    return err
    }
    cfg := config.New(ctx, "")
    name := "ecsInstanceVPCExample";
    if param := cfg.Get("name"); param != ""{
    name = param
    }
    defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
    VpcName: pulumi.String(name),
    CidrBlock: pulumi.String("172.16.0.0/16"),
    })
    if err != nil {
    return err
    }
    defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
    VpcId: defaultNetwork.ID(),
    CidrBlock: pulumi.String("172.16.0.0/24"),
    ZoneId: pulumi.String(defaultZones.Zones[0].Id),
    VswitchName: pulumi.String(name),
    })
    if err != nil {
    return err
    }
    defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "defaultSecurityGroup", &ecs.SecurityGroupArgs{
    VpcId: defaultNetwork.ID(),
    })
    if err != nil {
    return err
    }
    _, err = ecs.NewSecurityGroupRule(ctx, "defaultSecurityGroupRule", &ecs.SecurityGroupRuleArgs{
    Type: pulumi.String("ingress"),
    IpProtocol: pulumi.String("tcp"),
    NicType: pulumi.String("intranet"),
    Policy: pulumi.String("accept"),
    PortRange: pulumi.String("22/22"),
    Priority: pulumi.Int(1),
    SecurityGroupId: defaultSecurityGroup.ID(),
    CidrIp: pulumi.String("172.16.0.0/24"),
    })
    if err != nil {
    return err
    }
    foo, err := ecs.NewInstance(ctx, "foo", &ecs.InstanceArgs{
    VswitchId: defaultSwitch.ID(),
    ImageId: pulumi.String(defaultImages.Images[0].Id),
    InstanceType: pulumi.String(defaultInstanceTypes.InstanceTypes[0].Id),
    SystemDiskCategory: pulumi.String("cloud_efficiency"),
    InternetChargeType: pulumi.String("PayByTraffic"),
    InternetMaxBandwidthOut: pulumi.Int(5),
    SecurityGroups: pulumi.StringArray{
    defaultSecurityGroup.ID(),
    },
    InstanceName: pulumi.String(name),
    })
    if err != nil {
    return err
    }
    role, err := ram.NewRole(ctx, "role", &ram.RoleArgs{
    Document: pulumi.String(`  {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "Service": [
                "ecs.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }
    
    `),
    Description: pulumi.String("this is a test"),
    Force: pulumi.Bool(true),
    })
    if err != nil {
    return err
    }
    var splat0 pulumi.StringArray
    for _, val0 := range %!v(PANIC=Format method: fatal: An assertion has failed: tok: ) {
    splat0 = append(splat0, val0.ID())
    }
    _, err = ram.NewRoleAttachment(ctx, "attach", &ram.RoleAttachmentArgs{
    RoleName: role.Name,
    InstanceIds: splat0,
    })
    if err != nil {
    return err
    }
    return nil
    })
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var defaultZones = AliCloud.GetZones.Invoke(new()
        {
            AvailableDiskCategory = "cloud_efficiency",
            AvailableResourceCreation = "VSwitch",
        });
    
        var defaultInstanceTypes = AliCloud.Ecs.GetInstanceTypes.Invoke(new()
        {
            AvailabilityZone = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
            CpuCoreCount = 2,
            MemorySize = 4,
        });
    
        var defaultImages = AliCloud.Ecs.GetImages.Invoke(new()
        {
            NameRegex = "^ubuntu_18.*64",
            MostRecent = true,
            Owners = "system",
        });
    
        var config = new Config();
        var name = config.Get("name") ?? "ecsInstanceVPCExample";
        var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new()
        {
            VpcName = name,
            CidrBlock = "172.16.0.0/16",
        });
    
        var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new()
        {
            VpcId = defaultNetwork.Id,
            CidrBlock = "172.16.0.0/24",
            ZoneId = defaultZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
            VswitchName = name,
        });
    
        var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("defaultSecurityGroup", new()
        {
            VpcId = defaultNetwork.Id,
        });
    
        var defaultSecurityGroupRule = new AliCloud.Ecs.SecurityGroupRule("defaultSecurityGroupRule", new()
        {
            Type = "ingress",
            IpProtocol = "tcp",
            NicType = "intranet",
            Policy = "accept",
            PortRange = "22/22",
            Priority = 1,
            SecurityGroupId = defaultSecurityGroup.Id,
            CidrIp = "172.16.0.0/24",
        });
    
        var foo = new AliCloud.Ecs.Instance("foo", new()
        {
            VswitchId = defaultSwitch.Id,
            ImageId = defaultImages.Apply(getImagesResult => getImagesResult.Images[0]?.Id),
            InstanceType = defaultInstanceTypes.Apply(getInstanceTypesResult => getInstanceTypesResult.InstanceTypes[0]?.Id),
            SystemDiskCategory = "cloud_efficiency",
            InternetChargeType = "PayByTraffic",
            InternetMaxBandwidthOut = 5,
            SecurityGroups = new[]
            {
                defaultSecurityGroup.Id,
            },
            InstanceName = name,
        });
    
        var role = new AliCloud.Ram.Role("role", new()
        {
            Document = @"  {
        ""Statement"": [
          {
            ""Action"": ""sts:AssumeRole"",
            ""Effect"": ""Allow"",
            ""Principal"": {
              ""Service"": [
                ""ecs.aliyuncs.com""
              ]
            }
          }
        ],
        ""Version"": ""1""
      }
    
    ",
            Description = "this is a test",
            Force = true,
        });
    
        var attach = new AliCloud.Ram.RoleAttachment("attach", new()
        {
            RoleName = role.Name,
            InstanceIds = new[]
            {
                foo,
            }.Select(__item => __item.Id).ToList(),
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.AlicloudFunctions;
    import com.pulumi.alicloud.inputs.GetZonesArgs;
    import com.pulumi.alicloud.ecs.EcsFunctions;
    import com.pulumi.alicloud.ecs.inputs.GetInstanceTypesArgs;
    import com.pulumi.alicloud.ecs.inputs.GetImagesArgs;
    import com.pulumi.alicloud.vpc.Network;
    import com.pulumi.alicloud.vpc.NetworkArgs;
    import com.pulumi.alicloud.vpc.Switch;
    import com.pulumi.alicloud.vpc.SwitchArgs;
    import com.pulumi.alicloud.ecs.SecurityGroup;
    import com.pulumi.alicloud.ecs.SecurityGroupArgs;
    import com.pulumi.alicloud.ecs.SecurityGroupRule;
    import com.pulumi.alicloud.ecs.SecurityGroupRuleArgs;
    import com.pulumi.alicloud.ecs.Instance;
    import com.pulumi.alicloud.ecs.InstanceArgs;
    import com.pulumi.alicloud.ram.Role;
    import com.pulumi.alicloud.ram.RoleArgs;
    import com.pulumi.alicloud.ram.RoleAttachment;
    import com.pulumi.alicloud.ram.RoleAttachmentArgs;
    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 config = ctx.config();
            final var defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
                .availableDiskCategory("cloud_efficiency")
                .availableResourceCreation("VSwitch")
                .build());
    
            final var defaultInstanceTypes = EcsFunctions.getInstanceTypes(GetInstanceTypesArgs.builder()
                .availabilityZone(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .cpuCoreCount(2)
                .memorySize(4)
                .build());
    
            final var defaultImages = EcsFunctions.getImages(GetImagesArgs.builder()
                .nameRegex("^ubuntu_18.*64")
                .mostRecent(true)
                .owners("system")
                .build());
    
            final var name = config.get("name").orElse("ecsInstanceVPCExample");
            var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()        
                .vpcName(name)
                .cidrBlock("172.16.0.0/16")
                .build());
    
            var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()        
                .vpcId(defaultNetwork.id())
                .cidrBlock("172.16.0.0/24")
                .zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .vswitchName(name)
                .build());
    
            var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()        
                .vpcId(defaultNetwork.id())
                .build());
    
            var defaultSecurityGroupRule = new SecurityGroupRule("defaultSecurityGroupRule", SecurityGroupRuleArgs.builder()        
                .type("ingress")
                .ipProtocol("tcp")
                .nicType("intranet")
                .policy("accept")
                .portRange("22/22")
                .priority(1)
                .securityGroupId(defaultSecurityGroup.id())
                .cidrIp("172.16.0.0/24")
                .build());
    
            var foo = new Instance("foo", InstanceArgs.builder()        
                .vswitchId(defaultSwitch.id())
                .imageId(defaultImages.applyValue(getImagesResult -> getImagesResult.images()[0].id()))
                .instanceType(defaultInstanceTypes.applyValue(getInstanceTypesResult -> getInstanceTypesResult.instanceTypes()[0].id()))
                .systemDiskCategory("cloud_efficiency")
                .internetChargeType("PayByTraffic")
                .internetMaxBandwidthOut(5)
                .securityGroups(defaultSecurityGroup.id())
                .instanceName(name)
                .build());
    
            var role = new Role("role", RoleArgs.builder()        
                .document("""
      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
              "Service": [
                "ecs.aliyuncs.com"
              ]
            }
          }
        ],
        "Version": "1"
      }
    
                """)
                .description("this is a test")
                .force(true)
                .build());
    
            var attach = new RoleAttachment("attach", RoleAttachmentArgs.builder()        
                .roleName(role.name())
                .instanceIds(foo.stream().map(element -> element.id()).collect(toList()))
                .build());
    
        }
    }
    
    Coming soon!```
    </pulumi-choosable>
    </div>
    
    
    
    
    ## Create RoleAttachment Resource {#create}
    <div>
    <pulumi-chooser type="language" options="typescript,python,go,csharp,java,yaml"></pulumi-chooser>
    </div>
    
    
    <div>
    <pulumi-choosable type="language" values="javascript,typescript">
    <div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">new </span><span class="nx">RoleAttachment</span><span class="p">(</span><span class="nx">name</span><span class="p">:</span> <span class="nx">string</span><span class="p">,</span> <span class="nx">args</span><span class="p">:</span> <span class="nx"><a href="#inputs">RoleAttachmentArgs</a></span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#CustomResourceOptions">CustomResourceOptions</a></span><span class="p">);</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="python">
    <div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class=nd>@overload</span>
    <span class="k">def </span><span class="nx">RoleAttachment</span><span class="p">(</span><span class="nx">resource_name</span><span class="p">:</span> <span class="nx">str</span><span class="p">,</span>
                       <span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.ResourceOptions">Optional[ResourceOptions]</a></span> = None<span class="p">,</span>
                       <span class="nx">instance_ids</span><span class="p">:</span> <span class="nx">Optional[Sequence[str]]</span> = None<span class="p">,</span>
                       <span class="nx">role_name</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">)</span>
    <span class=nd>@overload</span>
    <span class="k">def </span><span class="nx">RoleAttachment</span><span class="p">(</span><span class="nx">resource_name</span><span class="p">:</span> <span class="nx">str</span><span class="p">,</span>
                       <span class="nx">args</span><span class="p">:</span> <span class="nx"><a href="#inputs">RoleAttachmentArgs</a></span><span class="p">,</span>
                       <span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.ResourceOptions">Optional[ResourceOptions]</a></span> = None<span class="p">)</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="go">
    <div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span><span class="nx">NewRoleAttachment</span><span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">name</span><span class="p"> </span><span class="nx">string</span><span class="p">,</span> <span class="nx">args</span><span class="p"> </span><span class="nx"><a href="#inputs">RoleAttachmentArgs</a></span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#ResourceOption">ResourceOption</a></span><span class="p">) (*<span class="nx">RoleAttachment</span>, error)</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="csharp">
    <div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public </span><span class="nx">RoleAttachment</span><span class="p">(</span><span class="nx">string</span><span class="p"> </span><span class="nx">name<span class="p">,</span> <span class="nx"><a href="#inputs">RoleAttachmentArgs</a></span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.CustomResourceOptions.html">CustomResourceOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="java">
    <div class="highlight"><pre class="chroma">
    <code class="language-java" data-lang="java"><span class="k">public </span><span class="nx">RoleAttachment</span><span class="p">(</span><span class="nx">String</span><span class="p"> </span><span class="nx">name<span class="p">,</span> <span class="nx"><a href="#inputs">RoleAttachmentArgs</a></span><span class="p"> </span><span class="nx">args<span class="p">)</span>
    <span class="k">public </span><span class="nx">RoleAttachment</span><span class="p">(</span><span class="nx">String</span><span class="p"> </span><span class="nx">name<span class="p">,</span> <span class="nx"><a href="#inputs">RoleAttachmentArgs</a></span><span class="p"> </span><span class="nx">args<span class="p">,</span> <span class="nx">CustomResourceOptions</span><span class="p"> </span><span class="nx">options<span class="p">)</span>
    </code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="yaml">
    <div class="highlight"><pre class="chroma"><code class="language-yaml" data-lang="yaml">type: <span class="nx">alicloud:ram:RoleAttachment</span><span class="p"></span>
    <span class="p">properties</span><span class="p">: </span><span class="c">#&nbsp;The arguments to resource properties.</span>
    <span class="p"></span><span class="p">options</span><span class="p">: </span><span class="c">#&nbsp;Bag of options to control resource&#39;s behavior.</span>
    <span class="p"></span>
    </code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="javascript,typescript">
    
    <dl class="resources-properties"><dt
            class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The unique name of the resource.</dd><dt
            class="property-required" title="Required">
            <span>args</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="#inputs">RoleAttachmentArgs</a></span>
        </dt>
        <dd>The arguments to resource properties.</dd><dt
            class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#CustomResourceOptions">CustomResourceOptions</a></span>
        </dt>
        <dd>Bag of options to control resource&#39;s behavior.</dd></dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="python">
    
    <dl class="resources-properties"><dt
            class="property-required" title="Required">
            <span>resource_name</span>
            <span class="property-indicator"></span>
            <span class="property-type">str</span>
        </dt>
        <dd>The unique name of the resource.</dd><dt
            class="property-required" title="Required">
            <span>args</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="#inputs">RoleAttachmentArgs</a></span>
        </dt>
        <dd>The arguments to resource properties.</dd><dt
            class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="/docs/reference/pkg/python/pulumi/#pulumi.ResourceOptions">ResourceOptions</a></span>
        </dt>
        <dd>Bag of options to control resource&#39;s behavior.</dd></dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="go">
    
    <dl class="resources-properties"><dt
            class="property-optional" title="Optional">
            <span>ctx</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span>
        </dt>
        <dd>Context object for the current deployment.</dd><dt
            class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The unique name of the resource.</dd><dt
            class="property-required" title="Required">
            <span>args</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="#inputs">RoleAttachmentArgs</a></span>
        </dt>
        <dd>The arguments to resource properties.</dd><dt
            class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#ResourceOption">ResourceOption</a></span>
        </dt>
        <dd>Bag of options to control resource&#39;s behavior.</dd></dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="csharp">
    
    <dl class="resources-properties"><dt
            class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The unique name of the resource.</dd><dt
            class="property-required" title="Required">
            <span>args</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="#inputs">RoleAttachmentArgs</a></span>
        </dt>
        <dd>The arguments to resource properties.</dd><dt
            class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.CustomResourceOptions.html">CustomResourceOptions</a></span>
        </dt>
        <dd>Bag of options to control resource&#39;s behavior.</dd></dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="java">
    
    <dl class="resources-properties"><dt
            class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
            <span class="property-type">String</span>
        </dt>
        <dd>The unique name of the resource.</dd><dt
            class="property-required" title="Required">
            <span>args</span>
            <span class="property-indicator"></span>
            <span class="property-type"><a href="#inputs">RoleAttachmentArgs</a></span>
        </dt>
        <dd>The arguments to resource properties.</dd><dt
            class="property-optional" title="Optional">
            <span>options</span>
            <span class="property-indicator"></span>
            <span class="property-type">CustomResourceOptions</span>
        </dt>
        <dd>Bag of options to control resource&#39;s behavior.</dd></dl>
    
    </pulumi-choosable>
    </div>
    
    ## RoleAttachment Resource Properties {#properties}
    
    To learn more about resource properties and how to use them, see [Inputs and Outputs](/docs/intro/concepts/inputs-outputs) in the Architecture and Concepts docs.
    
    ### Inputs
    
    The RoleAttachment resource accepts the following [input](/docs/intro/concepts/inputs-outputs) properties:
    
    
    
    <div>
    <pulumi-choosable type="language" values="csharp">
    <dl class="resources-properties"><dt class="property-required property-replacement"
                title="Required">
            <span id="instanceids_csharp">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#instanceids_csharp" style="color: inherit; text-decoration: inherit;">Instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">List&lt;string&gt;</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-required property-replacement"
                title="Required">
            <span id="rolename_csharp">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#rolename_csharp" style="color: inherit; text-decoration: inherit;">Role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="go">
    <dl class="resources-properties"><dt class="property-required property-replacement"
                title="Required">
            <span id="instanceids_go">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#instanceids_go" style="color: inherit; text-decoration: inherit;">Instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">[]string</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-required property-replacement"
                title="Required">
            <span id="rolename_go">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#rolename_go" style="color: inherit; text-decoration: inherit;">Role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="java">
    <dl class="resources-properties"><dt class="property-required property-replacement"
                title="Required">
            <span id="instanceids_java">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#instanceids_java" style="color: inherit; text-decoration: inherit;">instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">List&lt;String&gt;</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-required property-replacement"
                title="Required">
            <span id="rolename_java">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#rolename_java" style="color: inherit; text-decoration: inherit;">role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">String</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="javascript,typescript">
    <dl class="resources-properties"><dt class="property-required property-replacement"
                title="Required">
            <span id="instanceids_nodejs">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#instanceids_nodejs" style="color: inherit; text-decoration: inherit;">instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string[]</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-required property-replacement"
                title="Required">
            <span id="rolename_nodejs">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#rolename_nodejs" style="color: inherit; text-decoration: inherit;">role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="python">
    <dl class="resources-properties"><dt class="property-required property-replacement"
                title="Required">
            <span id="instance_ids_python">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#instance_ids_python" style="color: inherit; text-decoration: inherit;">instance_<wbr>ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">Sequence[str]</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-required property-replacement"
                title="Required">
            <span id="role_name_python">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#role_name_python" style="color: inherit; text-decoration: inherit;">role_<wbr>name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">str</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="yaml">
    <dl class="resources-properties"><dt class="property-required property-replacement"
                title="Required">
            <span id="instanceids_yaml">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#instanceids_yaml" style="color: inherit; text-decoration: inherit;">instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">List&lt;String&gt;</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-required property-replacement"
                title="Required">
            <span id="rolename_yaml">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#rolename_yaml" style="color: inherit; text-decoration: inherit;">role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">String</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    
    ### Outputs
    
    All [input](#inputs) properties are implicitly available as output properties. Additionally, the RoleAttachment resource produces the following output properties:
    
    
    
    <div>
    <pulumi-choosable type="language" values="csharp">
    <dl class="resources-properties"><dt class="property-"
                title="">
            <span id="id_csharp">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#id_csharp" style="color: inherit; text-decoration: inherit;">Id</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The provider-assigned unique ID for this managed resource.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="go">
    <dl class="resources-properties"><dt class="property-"
                title="">
            <span id="id_go">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#id_go" style="color: inherit; text-decoration: inherit;">Id</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The provider-assigned unique ID for this managed resource.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="java">
    <dl class="resources-properties"><dt class="property-"
                title="">
            <span id="id_java">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#id_java" style="color: inherit; text-decoration: inherit;">id</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">String</span>
        </dt>
        <dd>The provider-assigned unique ID for this managed resource.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="javascript,typescript">
    <dl class="resources-properties"><dt class="property-"
                title="">
            <span id="id_nodejs">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#id_nodejs" style="color: inherit; text-decoration: inherit;">id</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The provider-assigned unique ID for this managed resource.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="python">
    <dl class="resources-properties"><dt class="property-"
                title="">
            <span id="id_python">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#id_python" style="color: inherit; text-decoration: inherit;">id</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">str</span>
        </dt>
        <dd>The provider-assigned unique ID for this managed resource.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="yaml">
    <dl class="resources-properties"><dt class="property-"
                title="">
            <span id="id_yaml">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#id_yaml" style="color: inherit; text-decoration: inherit;">id</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">String</span>
        </dt>
        <dd>The provider-assigned unique ID for this managed resource.</dd></dl>
    </pulumi-choosable>
    </div>
    
    
    
    ## Look up Existing RoleAttachment Resource {#look-up}
    
    Get an existing RoleAttachment resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
    <div>
    <pulumi-chooser type="language" options="typescript,python,go,csharp,java,yaml"></pulumi-chooser>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="javascript,typescript">
    <div class="highlight"><pre class="chroma"><code class="language-typescript" data-lang="typescript"><span class="k">public static </span><span class="nf">get</span><span class="p">(</span><span class="nx">name</span><span class="p">:</span> <span class="nx">string</span><span class="p">,</span> <span class="nx">id</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#ID">Input&lt;ID&gt;</a></span><span class="p">,</span> <span class="nx">state</span><span class="p">?:</span> <span class="nx">RoleAttachmentState</span><span class="p">,</span> <span class="nx">opts</span><span class="p">?:</span> <span class="nx"><a href="/docs/reference/pkg/nodejs/pulumi/pulumi/#CustomResourceOptions">CustomResourceOptions</a></span><span class="p">): </span><span class="nx">RoleAttachment</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="python">
    <div class="highlight"><pre class="chroma"><code class="language-python" data-lang="python"><span class=nd>@staticmethod</span>
    <span class="k">def </span><span class="nf">get</span><span class="p">(</span><span class="nx">resource_name</span><span class="p">:</span> <span class="nx">str</span><span class="p">,</span>
            <span class="nx">id</span><span class="p">:</span> <span class="nx">str</span><span class="p">,</span>
            <span class="nx">opts</span><span class="p">:</span> <span class="nx"><a href="/docs/reference/pkg/python/pulumi/#pulumi.ResourceOptions">Optional[ResourceOptions]</a></span> = None<span class="p">,</span>
            <span class="nx">instance_ids</span><span class="p">:</span> <span class="nx">Optional[Sequence[str]]</span> = None<span class="p">,</span>
            <span class="nx">role_name</span><span class="p">:</span> <span class="nx">Optional[str]</span> = None<span class="p">) -&gt;</span> RoleAttachment</code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="go">
    <div class="highlight"><pre class="chroma"><code class="language-go" data-lang="go"><span class="k">func </span>GetRoleAttachment<span class="p">(</span><span class="nx">ctx</span><span class="p"> *</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#Context">Context</a></span><span class="p">,</span> <span class="nx">name</span><span class="p"> </span><span class="nx">string</span><span class="p">,</span> <span class="nx">id</span><span class="p"> </span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#IDInput">IDInput</a></span><span class="p">,</span> <span class="nx">state</span><span class="p"> *</span><span class="nx">RoleAttachmentState</span><span class="p">,</span> <span class="nx">opts</span><span class="p"> ...</span><span class="nx"><a href="https://pkg.go.dev/github.com/pulumi/pulumi/sdk/v3/go/pulumi?tab=doc#ResourceOption">ResourceOption</a></span><span class="p">) (*<span class="nx">RoleAttachment</span>, error)</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="csharp">
    <div class="highlight"><pre class="chroma"><code class="language-csharp" data-lang="csharp"><span class="k">public static </span><span class="nx">RoleAttachment</span><span class="nf"> Get</span><span class="p">(</span><span class="nx">string</span><span class="p"> </span><span class="nx">name<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.Input-1.html">Input&lt;string&gt;</a></span><span class="p"> </span><span class="nx">id<span class="p">,</span> <span class="nx">RoleAttachmentState</span><span class="p">? </span><span class="nx">state<span class="p">,</span> <span class="nx"><a href="/docs/reference/pkg/dotnet/Pulumi/Pulumi.CustomResourceOptions.html">CustomResourceOptions</a></span><span class="p">? </span><span class="nx">opts = null<span class="p">)</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="java">
    <div class="highlight"><pre class="chroma"><code class="language-java" data-lang="java"><span class="k">public static </span><span class="nx">RoleAttachment</span><span class="nf"> get</span><span class="p">(</span><span class="nx">String</span><span class="p"> </span><span class="nx">name<span class="p">,</span> <span class="nx">Output&lt;String&gt;</span><span class="p"> </span><span class="nx">id<span class="p">,</span> <span class="nx">RoleAttachmentState</span><span class="p"> </span><span class="nx">state<span class="p">,</span> <span class="nx">CustomResourceOptions</span><span class="p"> </span><span class="nx">options<span class="p">)</span></code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="yaml">
    <div class="highlight"><pre class="chroma"><code class="language-yaml" data-lang="yaml">Resource lookup is not supported in YAML</code></pre></div>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="javascript,typescript">
    
    <dl class="resources-properties">
        <dt class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The unique name of the resulting resource.</dd>
        <dt class="property-required" title="Required">
            <span>id</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The <em>unique</em> provider ID of the resource to lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>state</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>Any extra arguments used during the lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>A bag of options that control this resource's behavior.</dd>
    </dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="python">
    <dl class="resources-properties">
        <dt class="property-required" title="Required">
            <span>resource_name</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The unique name of the resulting resource.</dd>
        <dt class="property-required" title="Optional">
            <span>id</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The <em>unique</em> provider ID of the resource to lookup.</dd>
    </dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="go">
    
    <dl class="resources-properties">
        <dt class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The unique name of the resulting resource.</dd>
        <dt class="property-required" title="Required">
            <span>id</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The <em>unique</em> provider ID of the resource to lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>state</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>Any extra arguments used during the lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>A bag of options that control this resource's behavior.</dd>
    </dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="csharp">
    
    <dl class="resources-properties">
        <dt class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The unique name of the resulting resource.</dd>
        <dt class="property-required" title="Required">
            <span>id</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The <em>unique</em> provider ID of the resource to lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>state</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>Any extra arguments used during the lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>A bag of options that control this resource's behavior.</dd>
    </dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="java">
    
    <dl class="resources-properties">
        <dt class="property-required" title="Required">
            <span>name</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The unique name of the resulting resource.</dd>
        <dt class="property-required" title="Required">
            <span>id</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>The <em>unique</em> provider ID of the resource to lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>state</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>Any extra arguments used during the lookup.</dd>
        <dt class="property-optional" title="Optional">
            <span>opts</span>
            <span class="property-indicator"></span>
        </dt>
        <dd>A bag of options that control this resource's behavior.</dd>
    </dl>
    
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="typescript,javascript,python,go,csharp,java">
    The following state arguments are supported:
    
    
    <div>
    <pulumi-choosable type="language" values="csharp">
    <dl class="resources-properties"><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_instanceids_csharp">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_instanceids_csharp" style="color: inherit; text-decoration: inherit;">Instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">List&lt;string&gt;</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_rolename_csharp">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_rolename_csharp" style="color: inherit; text-decoration: inherit;">Role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="go">
    <dl class="resources-properties"><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_instanceids_go">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_instanceids_go" style="color: inherit; text-decoration: inherit;">Instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">[]string</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_rolename_go">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_rolename_go" style="color: inherit; text-decoration: inherit;">Role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="java">
    <dl class="resources-properties"><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_instanceids_java">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_instanceids_java" style="color: inherit; text-decoration: inherit;">instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">List&lt;String&gt;</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_rolename_java">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_rolename_java" style="color: inherit; text-decoration: inherit;">role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">String</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="javascript,typescript">
    <dl class="resources-properties"><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_instanceids_nodejs">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_instanceids_nodejs" style="color: inherit; text-decoration: inherit;">instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string[]</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_rolename_nodejs">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_rolename_nodejs" style="color: inherit; text-decoration: inherit;">role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">string</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="python">
    <dl class="resources-properties"><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_instance_ids_python">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_instance_ids_python" style="color: inherit; text-decoration: inherit;">instance_<wbr>ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">Sequence[str]</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_role_name_python">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_role_name_python" style="color: inherit; text-decoration: inherit;">role_<wbr>name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">str</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    
    <div>
    <pulumi-choosable type="language" values="yaml">
    <dl class="resources-properties"><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_instanceids_yaml">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_instanceids_yaml" style="color: inherit; text-decoration: inherit;">instance<wbr>Ids</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">List&lt;String&gt;</span>
        </dt>
        <dd>The list of ECS instance's IDs.</dd><dt class="property-optional property-replacement"
                title="Optional">
            <span id="state_rolename_yaml">
    <a data-swiftype-name="resource-property" data-swiftype-type="text" href="#state_rolename_yaml" style="color: inherit; text-decoration: inherit;">role<wbr>Name</a>
    </span>
            <span class="property-indicator"></span>
            <span class="property-type">String</span>
        </dt>
        <dd>The name of role used to bind. This name can have a string of 1 to 64 characters, must contain only alphanumeric characters or hyphens, such as &quot;-&quot;, &quot;_&quot;, and must not begin with a hyphen.</dd></dl>
    </pulumi-choosable>
    </div>
    </pulumi-choosable>
    </div>
    
    
    
    
    
    
    
    <h2 id="package-details">Package Details</h2>
    <dl class="package-details">
    	<dt>Repository</dt>
    	<dd><a href="https://github.com/pulumi/pulumi-alicloud">Alibaba Cloud pulumi/pulumi-alicloud</a></dd>
    	<dt>License</dt>
    	<dd>Apache-2.0</dd>
    	<dt>Notes</dt>
    	<dd>This Pulumi package is based on the <a href="https://github.com/aliyun/terraform-provider-alicloud"><code>alicloud</code> Terraform Provider</a>.</dd>
    </dl>
    
    alicloud logo
    Alibaba Cloud v3.51.0 published on Saturday, Mar 23, 2024 by Pulumi