getLocalGateways function

Future<GetLocalGatewaysResult> getLocalGateways(
  1. GetLocalGatewaysArgs args, {
  2. InvokeOptions? options,
})

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)
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 main

import (
	"github.com/pulumi/pulumi-aws/sdk/v7/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]string{
				"service": "production",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("foo", foo.Ids)
		return nil
	})
}
pulumi {
  required_providers {
    aws = {
      source = "pulumi/aws"
    }
  }
}

data "aws_ec2_getlocalgateways" "foo" {
  tags = {
    "service" = "production"
  }
}

output "foo" {
  value = data.aws_ec2_getlocalgateways.foo.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.ArrayList;
import java.util.Arrays;
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.ids());
    }
}
variables:
  foo:
    fn::invoke:
      function: aws:ec2:getLocalGateways
      arguments:
        tags:
          service: production
outputs:
  foo: ${foo.ids}

args Arguments passed to this invoke. Arguments for getLocalGateways. options Invoke options controlling this call.

Implementation

Future<GetLocalGatewaysResult> getLocalGateways(
  GetLocalGatewaysArgs args, {
  pulumi.InvokeOptions? options,
}) async {
  final deployment = pulumi.Deployment.instance;
  final result = await deployment.invoke<Map<String, dynamic>>(
    'aws:ec2/getLocalGateways:getLocalGateways',
    args.toMap(),
    options: pulumi.toDeploymentInvokeOptions(options),
  );
  return GetLocalGatewaysResult.fromMap(result);
}