get Regions
Provides information about AWS Regions. Can be used to filter regions i.e., by Opt-In status or only regions enabled for current account. To get details like endpoint and description of each region the data source can be combined with the aws.getRegion
data source.
Example Usage
Enabled AWS Regions:
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const current = aws.getRegions({});
import pulumi
import pulumi_aws as aws
current = aws.get_regions()
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var current = Aws.GetRegions.Invoke();
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := aws.GetRegions(ctx, &aws.GetRegionsArgs{}, nil)
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetRegionsArgs;
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 current = AwsFunctions.getRegions();
}
}
variables:
current:
fn::invoke:
function: aws:getRegions
arguments: {}
All the regions regardless of the availability
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const current = aws.getRegions({
allRegions: true,
});
import pulumi
import pulumi_aws as aws
current = aws.get_regions(all_regions=True)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var current = Aws.GetRegions.Invoke(new()
{
AllRegions = true,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := aws.GetRegions(ctx, &aws.GetRegionsArgs{
AllRegions: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetRegionsArgs;
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 current = AwsFunctions.getRegions(GetRegionsArgs.builder()
.allRegions(true)
.build());
}
}
variables:
current:
fn::invoke:
function: aws:getRegions
arguments:
allRegions: true
To see regions that are filtered by "not-opted-in"
, the all_regions
argument needs to be set to true
or no results will be returned.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const current = aws.getRegions({
allRegions: true,
filters: [{
name: "opt-in-status",
values: ["not-opted-in"],
}],
});
import pulumi
import pulumi_aws as aws
current = aws.get_regions(all_regions=True,
filters=[{
"name": "opt-in-status",
"values": ["not-opted-in"],
}])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var current = Aws.GetRegions.Invoke(new()
{
AllRegions = true,
Filters = new[]
{
new Aws.Inputs.GetRegionsFilterInputArgs
{
Name = "opt-in-status",
Values = new[]
{
"not-opted-in",
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := aws.GetRegions(ctx, &aws.GetRegionsArgs{
AllRegions: pulumi.BoolRef(true),
Filters: []aws.GetRegionsFilter{
{
Name: "opt-in-status",
Values: []string{
"not-opted-in",
},
},
},
}, nil)
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.AwsFunctions;
import com.pulumi.aws.inputs.GetRegionsArgs;
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 current = AwsFunctions.getRegions(GetRegionsArgs.builder()
.allRegions(true)
.filters(GetRegionsFilterArgs.builder()
.name("opt-in-status")
.values("not-opted-in")
.build())
.build());
}
}
variables:
current:
fn::invoke:
function: aws:getRegions
arguments:
allRegions: true
filters:
- name: opt-in-status
values:
- not-opted-in
Return
A collection of values returned by getRegions.
Parameters
A collection of arguments for invoking getRegions.
Return
A collection of values returned by getRegions.
Parameters
If true the source will query all regions regardless of availability.
Configuration block(s) to use as filters. Detailed below.
Identifier of the current partition (e.g., aws
in AWS Commercial, aws-cn
in AWS China).
See also
Return
A collection of values returned by getRegions.
Parameters
Builder for com.pulumi.aws.kotlin.inputs.GetRegionsPlainArgs.