get Instances
The Instances data source list ECS instance resources according to their ID, name regex, image id, status and other fields.
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.ecs.EcsFunctions;
import com.pulumi.alicloud.ecs.inputs.GetInstancesArgs;
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 instancesDs = EcsFunctions.getInstances(GetInstancesArgs.builder()
.nameRegex("web_server")
.status("Running")
.build());
ctx.export("firstInstanceId", instancesDs.applyValue(getInstancesResult -> getInstancesResult.instances()[0].id()));
ctx.export("instanceIds", instancesDs.applyValue(getInstancesResult -> getInstancesResult.ids()));
}
}
Return
A collection of values returned by getInstances.
Parameters
A collection of arguments for invoking getInstances.
Return
A collection of values returned by getInstances.
See also
Parameters
Availability zone where instances are located.
A list of ECS instance IDs.
The image ID of some ECS instance used.
A regex string to filter results by instance name.
The RAM role name which the instance attaches.
The Id of resource group which the instance belongs.
Instance status. Valid values: "Creating", "Starting", "Running", "Stopping" and "Stopped". If undefined, all statuses are considered.
A map of tags assigned to the ECS instances. It must be in the format:
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const taggedInstances = alicloud.ecs.getInstances({
tags: {
tagKey1: "tagValue1",
tagKey2: "tagValue2",
},
});
import pulumi
import pulumi_alicloud as alicloud
tagged_instances = alicloud.ecs.get_instances(tags={
"tagKey1": "tagValue1",
"tagKey2": "tagValue2",
})
using System.Collections.Generic;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var taggedInstances = AliCloud.Ecs.GetInstances.Invoke(new()
{
Tags =
{
{ "tagKey1", "tagValue1" },
{ "tagKey2", "tagValue2" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ecs.GetInstances(ctx, &ecs.GetInstancesArgs{
Tags: map[string]interface{}{
"tagKey1": "tagValue1",
"tagKey2": "tagValue2",
},
}, 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.alicloud.ecs.EcsFunctions;
import com.pulumi.alicloud.ecs.inputs.GetInstancesArgs;
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 taggedInstances = EcsFunctions.getInstances(GetInstancesArgs.builder()
.tags(Map.ofEntries(
Map.entry("tagKey1", "tagValue1"),
Map.entry("tagKey2", "tagValue2")
))
.build());
}
}
variables:
taggedInstances:
fn::invoke:
Function: alicloud:ecs:getInstances
Arguments:
tags:
tagKey1: tagValue1
tagKey2: tagValue2
ID of the VPC linked to the instances.
ID of the VSwitch linked to the instances.
Return
A collection of values returned by getInstances.
See also
Parameters
Builder for com.pulumi.alicloud.ecs.kotlin.inputs.GetInstancesPlainArgs.