1. Packages
  2. AWS
  3. API Docs
  4. ec2
  5. getLocalGateways
AWS v6.54.0 published on Friday, Sep 27, 2024 by Pulumi

aws.ec2.getLocalGateways

Explore with Pulumi AI

aws logo
AWS v6.54.0 published on Friday, Sep 27, 2024 by Pulumi

    Provides information for multiple EC2 Local Gateways, such as their identifiers.

    Example Usage

    The following example retrieves Local Gateways with a resource tag of service set to production.

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    export = async () => {
        const foo = await aws.ec2.getLocalGateways({
            tags: {
                service: "production",
            },
        });
        return {
            foo: foo.ids,
        };
    }
    
    import pulumi
    import pulumi_aws as aws
    
    foo = aws.ec2.get_local_gateways(tags={
        "service": "production",
    })
    pulumi.export("foo", foo.ids)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		foo, err := ec2.GetLocalGateways(ctx, &ec2.GetLocalGatewaysArgs{
    			Tags: map[string]interface{}{
    				"service": "production",
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("foo", foo.Ids)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = Aws.Ec2.GetLocalGateways.Invoke(new()
        {
            Tags = 
            {
                { "service", "production" },
            },
        });
    
        return new Dictionary<string, object?>
        {
            ["foo"] = foo.Apply(getLocalGatewaysResult => getLocalGatewaysResult.Ids),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.ec2.Ec2Functions;
    import com.pulumi.aws.ec2.inputs.GetLocalGatewaysArgs;
    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 foo = Ec2Functions.getLocalGateways(GetLocalGatewaysArgs.builder()
                .tags(Map.of("service", "production"))
                .build());
    
            ctx.export("foo", foo.applyValue(getLocalGatewaysResult -> getLocalGatewaysResult.ids()));
        }
    }
    
    variables:
      foo:
        fn::invoke:
          Function: aws:ec2:getLocalGateways
          Arguments:
            tags:
              service: production
    outputs:
      foo: ${foo.ids}
    

    Using getLocalGateways

    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 getLocalGateways(args: GetLocalGatewaysArgs, opts?: InvokeOptions): Promise<GetLocalGatewaysResult>
    function getLocalGatewaysOutput(args: GetLocalGatewaysOutputArgs, opts?: InvokeOptions): Output<GetLocalGatewaysResult>
    def get_local_gateways(filters: Optional[Sequence[GetLocalGatewaysFilter]] = None,
                           tags: Optional[Mapping[str, str]] = None,
                           opts: Optional[InvokeOptions] = None) -> GetLocalGatewaysResult
    def get_local_gateways_output(filters: Optional[pulumi.Input[Sequence[pulumi.Input[GetLocalGatewaysFilterArgs]]]] = None,
                           tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
                           opts: Optional[InvokeOptions] = None) -> Output[GetLocalGatewaysResult]
    func GetLocalGateways(ctx *Context, args *GetLocalGatewaysArgs, opts ...InvokeOption) (*GetLocalGatewaysResult, error)
    func GetLocalGatewaysOutput(ctx *Context, args *GetLocalGatewaysOutputArgs, opts ...InvokeOption) GetLocalGatewaysResultOutput

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

    public static class GetLocalGateways 
    {
        public static Task<GetLocalGatewaysResult> InvokeAsync(GetLocalGatewaysArgs args, InvokeOptions? opts = null)
        public static Output<GetLocalGatewaysResult> Invoke(GetLocalGatewaysInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetLocalGatewaysResult> getLocalGateways(GetLocalGatewaysArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: aws:ec2/getLocalGateways:getLocalGateways
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Filters List<GetLocalGatewaysFilter>

    Custom filter block as described below.

    More complex filters can be expressed using one or more filter sub-blocks, which take the following arguments:

    Tags Dictionary<string, string>
    Mapping of tags, each pair of which must exactly match a pair on the desired local_gateways.
    Filters []GetLocalGatewaysFilter

    Custom filter block as described below.

    More complex filters can be expressed using one or more filter sub-blocks, which take the following arguments:

    Tags map[string]string
    Mapping of tags, each pair of which must exactly match a pair on the desired local_gateways.
    filters List<GetLocalGatewaysFilter>

    Custom filter block as described below.

    More complex filters can be expressed using one or more filter sub-blocks, which take the following arguments:

    tags Map<String,String>
    Mapping of tags, each pair of which must exactly match a pair on the desired local_gateways.
    filters GetLocalGatewaysFilter[]

    Custom filter block as described below.

    More complex filters can be expressed using one or more filter sub-blocks, which take the following arguments:

    tags {[key: string]: string}
    Mapping of tags, each pair of which must exactly match a pair on the desired local_gateways.
    filters Sequence[GetLocalGatewaysFilter]

    Custom filter block as described below.

    More complex filters can be expressed using one or more filter sub-blocks, which take the following arguments:

    tags Mapping[str, str]
    Mapping of tags, each pair of which must exactly match a pair on the desired local_gateways.
    filters List<Property Map>

    Custom filter block as described below.

    More complex filters can be expressed using one or more filter sub-blocks, which take the following arguments:

    tags Map<String>
    Mapping of tags, each pair of which must exactly match a pair on the desired local_gateways.

    getLocalGateways Result

    The following output properties are available:

    Id string
    The provider-assigned unique ID for this managed resource.
    Ids List<string>
    Set of all the Local Gateway identifiers
    Tags Dictionary<string, string>
    Filters List<GetLocalGatewaysFilter>
    Id string
    The provider-assigned unique ID for this managed resource.
    Ids []string
    Set of all the Local Gateway identifiers
    Tags map[string]string
    Filters []GetLocalGatewaysFilter
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    Set of all the Local Gateway identifiers
    tags Map<String,String>
    filters List<GetLocalGatewaysFilter>
    id string
    The provider-assigned unique ID for this managed resource.
    ids string[]
    Set of all the Local Gateway identifiers
    tags {[key: string]: string}
    filters GetLocalGatewaysFilter[]
    id str
    The provider-assigned unique ID for this managed resource.
    ids Sequence[str]
    Set of all the Local Gateway identifiers
    tags Mapping[str, str]
    filters Sequence[GetLocalGatewaysFilter]
    id String
    The provider-assigned unique ID for this managed resource.
    ids List<String>
    Set of all the Local Gateway identifiers
    tags Map<String>
    filters List<Property Map>

    Supporting Types

    GetLocalGatewaysFilter

    Name string
    Name of the field to filter by, as defined by the underlying AWS API.
    Values List<string>
    Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.
    Name string
    Name of the field to filter by, as defined by the underlying AWS API.
    Values []string
    Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.
    name String
    Name of the field to filter by, as defined by the underlying AWS API.
    values List<String>
    Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.
    name string
    Name of the field to filter by, as defined by the underlying AWS API.
    values string[]
    Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.
    name str
    Name of the field to filter by, as defined by the underlying AWS API.
    values Sequence[str]
    Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.
    name String
    Name of the field to filter by, as defined by the underlying AWS API.
    values List<String>
    Set of values that are accepted for the given field. A Local Gateway will be selected if any one of the given values matches.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    AWS v6.54.0 published on Friday, Sep 27, 2024 by Pulumi