1. Packages
  2. Alibaba Cloud
  3. API Docs
  4. vpc
  5. getIpv6Gateways
Alibaba Cloud v3.56.0 published on Friday, May 31, 2024 by Pulumi

alicloud.vpc.getIpv6Gateways

Explore with Pulumi AI

alicloud logo
Alibaba Cloud v3.56.0 published on Friday, May 31, 2024 by Pulumi

    This data source provides the Vpc Ipv6 Gateways of the current Alibaba Cloud user.

    NOTE: Available in v1.142.0+.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as alicloud from "@pulumi/alicloud";
    
    const ids = alicloud.vpc.getIpv6Gateways({
        ids: ["example_id"],
    });
    export const vpcIpv6GatewayId1 = ids.then(ids => ids.gateways?.[0]?.id);
    const nameRegex = alicloud.vpc.getIpv6Gateways({
        nameRegex: "^my-Ipv6Gateway",
    });
    export const vpcIpv6GatewayId2 = nameRegex.then(nameRegex => nameRegex.gateways?.[0]?.id);
    const vpcId = alicloud.vpc.getIpv6Gateways({
        ids: ["example_id"],
        vpcId: "example_value",
    });
    export const vpcIpv6GatewayId3 = vpcId.then(vpcId => vpcId.gateways?.[0]?.id);
    const status = alicloud.vpc.getIpv6Gateways({
        ids: ["example_id"],
        status: "Available",
    });
    export const vpcIpv6GatewayId4 = status.then(status => status.gateways?.[0]?.id);
    
    import pulumi
    import pulumi_alicloud as alicloud
    
    ids = alicloud.vpc.get_ipv6_gateways(ids=["example_id"])
    pulumi.export("vpcIpv6GatewayId1", ids.gateways[0].id)
    name_regex = alicloud.vpc.get_ipv6_gateways(name_regex="^my-Ipv6Gateway")
    pulumi.export("vpcIpv6GatewayId2", name_regex.gateways[0].id)
    vpc_id = alicloud.vpc.get_ipv6_gateways(ids=["example_id"],
        vpc_id="example_value")
    pulumi.export("vpcIpv6GatewayId3", vpc_id.gateways[0].id)
    status = alicloud.vpc.get_ipv6_gateways(ids=["example_id"],
        status="Available")
    pulumi.export("vpcIpv6GatewayId4", status.gateways[0].id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ids, err := vpc.GetIpv6Gateways(ctx, &vpc.GetIpv6GatewaysArgs{
    			Ids: []string{
    				"example_id",
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("vpcIpv6GatewayId1", ids.Gateways[0].Id)
    		nameRegex, err := vpc.GetIpv6Gateways(ctx, &vpc.GetIpv6GatewaysArgs{
    			NameRegex: pulumi.StringRef("^my-Ipv6Gateway"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("vpcIpv6GatewayId2", nameRegex.Gateways[0].Id)
    		vpcId, err := vpc.GetIpv6Gateways(ctx, &vpc.GetIpv6GatewaysArgs{
    			Ids: []string{
    				"example_id",
    			},
    			VpcId: pulumi.StringRef("example_value"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("vpcIpv6GatewayId3", vpcId.Gateways[0].Id)
    		status, err := vpc.GetIpv6Gateways(ctx, &vpc.GetIpv6GatewaysArgs{
    			Ids: []string{
    				"example_id",
    			},
    			Status: pulumi.StringRef("Available"),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("vpcIpv6GatewayId4", status.Gateways[0].Id)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using AliCloud = Pulumi.AliCloud;
    
    return await Deployment.RunAsync(() => 
    {
        var ids = AliCloud.Vpc.GetIpv6Gateways.Invoke(new()
        {
            Ids = new[]
            {
                "example_id",
            },
        });
    
        var nameRegex = AliCloud.Vpc.GetIpv6Gateways.Invoke(new()
        {
            NameRegex = "^my-Ipv6Gateway",
        });
    
        var vpcId = AliCloud.Vpc.GetIpv6Gateways.Invoke(new()
        {
            Ids = new[]
            {
                "example_id",
            },
            VpcId = "example_value",
        });
    
        var status = AliCloud.Vpc.GetIpv6Gateways.Invoke(new()
        {
            Ids = new[]
            {
                "example_id",
            },
            Status = "Available",
        });
    
        return new Dictionary<string, object?>
        {
            ["vpcIpv6GatewayId1"] = ids.Apply(getIpv6GatewaysResult => getIpv6GatewaysResult.Gateways[0]?.Id),
            ["vpcIpv6GatewayId2"] = nameRegex.Apply(getIpv6GatewaysResult => getIpv6GatewaysResult.Gateways[0]?.Id),
            ["vpcIpv6GatewayId3"] = vpcId.Apply(getIpv6GatewaysResult => getIpv6GatewaysResult.Gateways[0]?.Id),
            ["vpcIpv6GatewayId4"] = status.Apply(getIpv6GatewaysResult => getIpv6GatewaysResult.Gateways[0]?.Id),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.alicloud.vpc.VpcFunctions;
    import com.pulumi.alicloud.vpc.inputs.GetIpv6GatewaysArgs;
    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 ids = VpcFunctions.getIpv6Gateways(GetIpv6GatewaysArgs.builder()
                .ids("example_id")
                .build());
    
            ctx.export("vpcIpv6GatewayId1", ids.applyValue(getIpv6GatewaysResult -> getIpv6GatewaysResult.gateways()[0].id()));
            final var nameRegex = VpcFunctions.getIpv6Gateways(GetIpv6GatewaysArgs.builder()
                .nameRegex("^my-Ipv6Gateway")
                .build());
    
            ctx.export("vpcIpv6GatewayId2", nameRegex.applyValue(getIpv6GatewaysResult -> getIpv6GatewaysResult.gateways()[0].id()));
            final var vpcId = VpcFunctions.getIpv6Gateways(GetIpv6GatewaysArgs.builder()
                .ids("example_id")
                .vpcId("example_value")
                .build());
    
            ctx.export("vpcIpv6GatewayId3", vpcId.applyValue(getIpv6GatewaysResult -> getIpv6GatewaysResult.gateways()[0].id()));
            final var status = VpcFunctions.getIpv6Gateways(GetIpv6GatewaysArgs.builder()
                .ids("example_id")
                .status("Available")
                .build());
    
            ctx.export("vpcIpv6GatewayId4", status.applyValue(getIpv6GatewaysResult -> getIpv6GatewaysResult.gateways()[0].id()));
        }
    }
    
    variables:
      ids:
        fn::invoke:
          Function: alicloud:vpc:getIpv6Gateways
          Arguments:
            ids:
              - example_id
      nameRegex:
        fn::invoke:
          Function: alicloud:vpc:getIpv6Gateways
          Arguments:
            nameRegex: ^my-Ipv6Gateway
      vpcId:
        fn::invoke:
          Function: alicloud:vpc:getIpv6Gateways
          Arguments:
            ids:
              - example_id
            vpcId: example_value
      status:
        fn::invoke:
          Function: alicloud:vpc:getIpv6Gateways
          Arguments:
            ids:
              - example_id
            status: Available
    outputs:
      vpcIpv6GatewayId1: ${ids.gateways[0].id}
      vpcIpv6GatewayId2: ${nameRegex.gateways[0].id}
      vpcIpv6GatewayId3: ${vpcId.gateways[0].id}
      vpcIpv6GatewayId4: ${status.gateways[0].id}
    

    Using getIpv6Gateways

    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 getIpv6Gateways(args: GetIpv6GatewaysArgs, opts?: InvokeOptions): Promise<GetIpv6GatewaysResult>
    function getIpv6GatewaysOutput(args: GetIpv6GatewaysOutputArgs, opts?: InvokeOptions): Output<GetIpv6GatewaysResult>
    def get_ipv6_gateways(ids: Optional[Sequence[str]] = None,
                          ipv6_gateway_name: Optional[str] = None,
                          name_regex: Optional[str] = None,
                          output_file: Optional[str] = None,
                          status: Optional[str] = None,
                          vpc_id: Optional[str] = None,
                          opts: Optional[InvokeOptions] = None) -> GetIpv6GatewaysResult
    def get_ipv6_gateways_output(ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                          ipv6_gateway_name: Optional[pulumi.Input[str]] = None,
                          name_regex: Optional[pulumi.Input[str]] = None,
                          output_file: Optional[pulumi.Input[str]] = None,
                          status: Optional[pulumi.Input[str]] = None,
                          vpc_id: Optional[pulumi.Input[str]] = None,
                          opts: Optional[InvokeOptions] = None) -> Output[GetIpv6GatewaysResult]
    func GetIpv6Gateways(ctx *Context, args *GetIpv6GatewaysArgs, opts ...InvokeOption) (*GetIpv6GatewaysResult, error)
    func GetIpv6GatewaysOutput(ctx *Context, args *GetIpv6GatewaysOutputArgs, opts ...InvokeOption) GetIpv6GatewaysResultOutput

    > Note: This function is named GetIpv6Gateways in the Go SDK.

    public static class GetIpv6Gateways 
    {
        public static Task<GetIpv6GatewaysResult> InvokeAsync(GetIpv6GatewaysArgs args, InvokeOptions? opts = null)
        public static Output<GetIpv6GatewaysResult> Invoke(GetIpv6GatewaysInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetIpv6GatewaysResult> getIpv6Gateways(GetIpv6GatewaysArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: alicloud:vpc/getIpv6Gateways:getIpv6Gateways
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Ids List<string>
    A list of Ipv6 Gateway IDs.
    Ipv6GatewayName string
    The name of the IPv6 gateway.
    NameRegex string
    A regex string to filter results by Ipv6 Gateway name.
    OutputFile string
    File name where to save data source results (after running pulumi preview).
    Status string
    The status of the resource. Valid values: Available, Deleting, Pending.
    VpcId string
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    Ids []string
    A list of Ipv6 Gateway IDs.
    Ipv6GatewayName string
    The name of the IPv6 gateway.
    NameRegex string
    A regex string to filter results by Ipv6 Gateway name.
    OutputFile string
    File name where to save data source results (after running pulumi preview).
    Status string
    The status of the resource. Valid values: Available, Deleting, Pending.
    VpcId string
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    ids List<String>
    A list of Ipv6 Gateway IDs.
    ipv6GatewayName String
    The name of the IPv6 gateway.
    nameRegex String
    A regex string to filter results by Ipv6 Gateway name.
    outputFile String
    File name where to save data source results (after running pulumi preview).
    status String
    The status of the resource. Valid values: Available, Deleting, Pending.
    vpcId String
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    ids string[]
    A list of Ipv6 Gateway IDs.
    ipv6GatewayName string
    The name of the IPv6 gateway.
    nameRegex string
    A regex string to filter results by Ipv6 Gateway name.
    outputFile string
    File name where to save data source results (after running pulumi preview).
    status string
    The status of the resource. Valid values: Available, Deleting, Pending.
    vpcId string
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    ids Sequence[str]
    A list of Ipv6 Gateway IDs.
    ipv6_gateway_name str
    The name of the IPv6 gateway.
    name_regex str
    A regex string to filter results by Ipv6 Gateway name.
    output_file str
    File name where to save data source results (after running pulumi preview).
    status str
    The status of the resource. Valid values: Available, Deleting, Pending.
    vpc_id str
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    ids List<String>
    A list of Ipv6 Gateway IDs.
    ipv6GatewayName String
    The name of the IPv6 gateway.
    nameRegex String
    A regex string to filter results by Ipv6 Gateway name.
    outputFile String
    File name where to save data source results (after running pulumi preview).
    status String
    The status of the resource. Valid values: Available, Deleting, Pending.
    vpcId String
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.

    getIpv6Gateways Result

    The following output properties are available:

    Gateways List<Pulumi.AliCloud.Vpc.Outputs.GetIpv6GatewaysGateway>
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids List<string>
    Names List<string>
    Ipv6GatewayName string
    NameRegex string
    OutputFile string
    Status string
    VpcId string
    Gateways []GetIpv6GatewaysGateway
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids []string
    Names []string
    Ipv6GatewayName string
    NameRegex string
    OutputFile string
    Status string
    VpcId string
    gateways List<GetIpv6GatewaysGateway>
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    names List<String>
    ipv6GatewayName String
    nameRegex String
    outputFile String
    status String
    vpcId String
    gateways GetIpv6GatewaysGateway[]
    id string
    The provider-assigned unique ID for this managed resource.
    ids string[]
    names string[]
    ipv6GatewayName string
    nameRegex string
    outputFile string
    status string
    vpcId string
    gateways Sequence[GetIpv6GatewaysGateway]
    id str
    The provider-assigned unique ID for this managed resource.
    ids Sequence[str]
    names Sequence[str]
    ipv6_gateway_name str
    name_regex str
    output_file str
    status str
    vpc_id str
    gateways List<Property Map>
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    names List<String>
    ipv6GatewayName String
    nameRegex String
    outputFile String
    status String
    vpcId String

    Supporting Types

    GetIpv6GatewaysGateway

    BusinessStatus string
    The status of the IPv6 gateway. Valid values:Normal, FinancialLocked and SecurityLocked. Normal: working as expected. FinancialLocked: locked due to overdue payments. SecurityLocked: locked due to security reasons.
    CreateTime string
    The creation time of the resource.
    Description string
    The description of the IPv6 gateway.
    ExpiredTime string
    The time when the IPv6 gateway expires.
    Id string
    The ID of the Ipv6 Gateway.
    InstanceChargeType string
    The metering method of the IPv6 gateway. Valid values: PayAsYouGo.
    Ipv6GatewayId string
    The first ID of the resource.
    Ipv6GatewayName string
    The name of the IPv6 gateway.
    Spec string
    The specification of the IPv6 gateway. Valid values: Large, Medium and Small. Small (default): Free Edition. Medium: Enterprise Edition . Large: Enhanced Enterprise Edition. The throughput capacity of an IPv6 gateway varies based on the edition. For more information, see Editions of IPv6 gateways.
    Status string
    The status of the IPv6 gateway. Valid values: Available, Deleting, Pending.
    VpcId string
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    BusinessStatus string
    The status of the IPv6 gateway. Valid values:Normal, FinancialLocked and SecurityLocked. Normal: working as expected. FinancialLocked: locked due to overdue payments. SecurityLocked: locked due to security reasons.
    CreateTime string
    The creation time of the resource.
    Description string
    The description of the IPv6 gateway.
    ExpiredTime string
    The time when the IPv6 gateway expires.
    Id string
    The ID of the Ipv6 Gateway.
    InstanceChargeType string
    The metering method of the IPv6 gateway. Valid values: PayAsYouGo.
    Ipv6GatewayId string
    The first ID of the resource.
    Ipv6GatewayName string
    The name of the IPv6 gateway.
    Spec string
    The specification of the IPv6 gateway. Valid values: Large, Medium and Small. Small (default): Free Edition. Medium: Enterprise Edition . Large: Enhanced Enterprise Edition. The throughput capacity of an IPv6 gateway varies based on the edition. For more information, see Editions of IPv6 gateways.
    Status string
    The status of the IPv6 gateway. Valid values: Available, Deleting, Pending.
    VpcId string
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    businessStatus String
    The status of the IPv6 gateway. Valid values:Normal, FinancialLocked and SecurityLocked. Normal: working as expected. FinancialLocked: locked due to overdue payments. SecurityLocked: locked due to security reasons.
    createTime String
    The creation time of the resource.
    description String
    The description of the IPv6 gateway.
    expiredTime String
    The time when the IPv6 gateway expires.
    id String
    The ID of the Ipv6 Gateway.
    instanceChargeType String
    The metering method of the IPv6 gateway. Valid values: PayAsYouGo.
    ipv6GatewayId String
    The first ID of the resource.
    ipv6GatewayName String
    The name of the IPv6 gateway.
    spec String
    The specification of the IPv6 gateway. Valid values: Large, Medium and Small. Small (default): Free Edition. Medium: Enterprise Edition . Large: Enhanced Enterprise Edition. The throughput capacity of an IPv6 gateway varies based on the edition. For more information, see Editions of IPv6 gateways.
    status String
    The status of the IPv6 gateway. Valid values: Available, Deleting, Pending.
    vpcId String
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    businessStatus string
    The status of the IPv6 gateway. Valid values:Normal, FinancialLocked and SecurityLocked. Normal: working as expected. FinancialLocked: locked due to overdue payments. SecurityLocked: locked due to security reasons.
    createTime string
    The creation time of the resource.
    description string
    The description of the IPv6 gateway.
    expiredTime string
    The time when the IPv6 gateway expires.
    id string
    The ID of the Ipv6 Gateway.
    instanceChargeType string
    The metering method of the IPv6 gateway. Valid values: PayAsYouGo.
    ipv6GatewayId string
    The first ID of the resource.
    ipv6GatewayName string
    The name of the IPv6 gateway.
    spec string
    The specification of the IPv6 gateway. Valid values: Large, Medium and Small. Small (default): Free Edition. Medium: Enterprise Edition . Large: Enhanced Enterprise Edition. The throughput capacity of an IPv6 gateway varies based on the edition. For more information, see Editions of IPv6 gateways.
    status string
    The status of the IPv6 gateway. Valid values: Available, Deleting, Pending.
    vpcId string
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    business_status str
    The status of the IPv6 gateway. Valid values:Normal, FinancialLocked and SecurityLocked. Normal: working as expected. FinancialLocked: locked due to overdue payments. SecurityLocked: locked due to security reasons.
    create_time str
    The creation time of the resource.
    description str
    The description of the IPv6 gateway.
    expired_time str
    The time when the IPv6 gateway expires.
    id str
    The ID of the Ipv6 Gateway.
    instance_charge_type str
    The metering method of the IPv6 gateway. Valid values: PayAsYouGo.
    ipv6_gateway_id str
    The first ID of the resource.
    ipv6_gateway_name str
    The name of the IPv6 gateway.
    spec str
    The specification of the IPv6 gateway. Valid values: Large, Medium and Small. Small (default): Free Edition. Medium: Enterprise Edition . Large: Enhanced Enterprise Edition. The throughput capacity of an IPv6 gateway varies based on the edition. For more information, see Editions of IPv6 gateways.
    status str
    The status of the IPv6 gateway. Valid values: Available, Deleting, Pending.
    vpc_id str
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.
    businessStatus String
    The status of the IPv6 gateway. Valid values:Normal, FinancialLocked and SecurityLocked. Normal: working as expected. FinancialLocked: locked due to overdue payments. SecurityLocked: locked due to security reasons.
    createTime String
    The creation time of the resource.
    description String
    The description of the IPv6 gateway.
    expiredTime String
    The time when the IPv6 gateway expires.
    id String
    The ID of the Ipv6 Gateway.
    instanceChargeType String
    The metering method of the IPv6 gateway. Valid values: PayAsYouGo.
    ipv6GatewayId String
    The first ID of the resource.
    ipv6GatewayName String
    The name of the IPv6 gateway.
    spec String
    The specification of the IPv6 gateway. Valid values: Large, Medium and Small. Small (default): Free Edition. Medium: Enterprise Edition . Large: Enhanced Enterprise Edition. The throughput capacity of an IPv6 gateway varies based on the edition. For more information, see Editions of IPv6 gateways.
    status String
    The status of the IPv6 gateway. Valid values: Available, Deleting, Pending.
    vpcId String
    The ID of the virtual private cloud (VPC) to which the IPv6 gateway belongs.

    Package Details

    Repository
    Alibaba Cloud pulumi/pulumi-alicloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the alicloud Terraform Provider.
    alicloud logo
    Alibaba Cloud v3.56.0 published on Friday, May 31, 2024 by Pulumi