getZones

suspend fun getZones(argument: GetZonesPlainArgs): GetZonesResult

This data source provides availability zones for mongoDB that can be accessed by an Alibaba Cloud account within the region configured in the provider.

NOTE: Available in v1.73.0+.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
// Declare the data source
const zonesIds = alicloud.mongodb.getZones({});
// Create an mongoDB instance with the first matched zone
const mongodb = new alicloud.mongodb.Instance("mongodb", {zoneId: zonesIds.then(zonesIds => zonesIds.zones?.[0]?.id)});
import pulumi
import pulumi_alicloud as alicloud
# Declare the data source
zones_ids = alicloud.mongodb.get_zones()
# Create an mongoDB instance with the first matched zone
mongodb = alicloud.mongodb.Instance("mongodb", zone_id=zones_ids.zones[0].id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
// Declare the data source
var zonesIds = AliCloud.MongoDB.GetZones.Invoke();
// Create an mongoDB instance with the first matched zone
var mongodb = new AliCloud.MongoDB.Instance("mongodb", new()
{
ZoneId = zonesIds.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Declare the data source
zonesIds, err := mongodb.GetZones(ctx, &mongodb.GetZonesArgs{}, nil)
if err != nil {
return err
}
// Create an mongoDB instance with the first matched zone
_, err = mongodb.NewInstance(ctx, "mongodb", &mongodb.InstanceArgs{
ZoneId: pulumi.String(zonesIds.Zones[0].Id),
})
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.alicloud.mongodb.MongodbFunctions;
import com.pulumi.alicloud.mongodb.inputs.GetZonesArgs;
import com.pulumi.alicloud.mongodb.Instance;
import com.pulumi.alicloud.mongodb.InstanceArgs;
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) {
// Declare the data source
final var zonesIds = MongodbFunctions.getZones(GetZonesArgs.builder()
.build());
// Create an mongoDB instance with the first matched zone
var mongodb = new Instance("mongodb", InstanceArgs.builder()
.zoneId(zonesIds.zones()[0].id())
.build());
}
}
resources:
# Create an mongoDB instance with the first matched zone
mongodb:
type: alicloud:mongodb:Instance
properties:
zoneId: ${zonesIds.zones[0].id}
variables:
# Declare the data source
zonesIds:
fn::invoke:
function: alicloud:mongodb:getZones
arguments: {}

Return

A collection of values returned by getZones.

Parameters

argument

A collection of arguments for invoking getZones.


suspend fun getZones(multi: Boolean? = null, outputFile: String? = null): GetZonesResult

Return

A collection of values returned by getZones.

Parameters

multi

Indicate whether the zones can be used in a multi AZ configuration. Default to false. Multi AZ is usually used to launch MongoDB instances.

outputFile

File name where to save data source results (after running pulumi preview).

See also


suspend fun getZones(argument: suspend GetZonesPlainArgsBuilder.() -> Unit): GetZonesResult

Return

A collection of values returned by getZones.

Parameters

argument

Builder for com.pulumi.alicloud.mongodb.kotlin.inputs.GetZonesPlainArgs.

See also