juju 1.0.0 published on Monday, Oct 27, 2025 by juju
juju.getMachine
A data source representing a Juju Machine.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as juju from "@pulumi/juju";
const _this = juju.getMachine({
    modelUuid: juju_model.development.uuid,
    machineId: "2",
});
import pulumi
import pulumi_juju as juju
this = juju.get_machine(model_uuid=juju_model["development"]["uuid"],
    machine_id="2")
package main
import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/juju/juju"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := juju.LookupMachine(ctx, &juju.LookupMachineArgs{
			ModelUuid: juju_model.Development.Uuid,
			MachineId: "2",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Juju = Pulumi.Juju;
return await Deployment.RunAsync(() => 
{
    var @this = Juju.GetMachine.Invoke(new()
    {
        ModelUuid = juju_model.Development.Uuid,
        MachineId = "2",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.juju.JujuFunctions;
import com.pulumi.juju.inputs.GetMachineArgs;
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 this = JujuFunctions.getMachine(GetMachineArgs.builder()
            .modelUuid(juju_model.development().uuid())
            .machineId("2")
            .build());
    }
}
variables:
  this:
    fn::invoke:
      function: juju:getMachine
      arguments:
        modelUuid: ${juju_model.development.uuid}
        machineId: '2'
Using getMachine
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 getMachine(args: GetMachineArgs, opts?: InvokeOptions): Promise<GetMachineResult>
function getMachineOutput(args: GetMachineOutputArgs, opts?: InvokeOptions): Output<GetMachineResult>def get_machine(machine_id: Optional[str] = None,
                model_uuid: Optional[str] = None,
                opts: Optional[InvokeOptions] = None) -> GetMachineResult
def get_machine_output(machine_id: Optional[pulumi.Input[str]] = None,
                model_uuid: Optional[pulumi.Input[str]] = None,
                opts: Optional[InvokeOptions] = None) -> Output[GetMachineResult]func LookupMachine(ctx *Context, args *LookupMachineArgs, opts ...InvokeOption) (*LookupMachineResult, error)
func LookupMachineOutput(ctx *Context, args *LookupMachineOutputArgs, opts ...InvokeOption) LookupMachineResultOutput> Note: This function is named LookupMachine in the Go SDK.
public static class GetMachine 
{
    public static Task<GetMachineResult> InvokeAsync(GetMachineArgs args, InvokeOptions? opts = null)
    public static Output<GetMachineResult> Invoke(GetMachineInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetMachineResult> getMachine(GetMachineArgs args, InvokeOptions options)
public static Output<GetMachineResult> getMachine(GetMachineArgs args, InvokeOptions options)
fn::invoke:
  function: juju:index/getMachine:getMachine
  arguments:
    # arguments dictionaryThe following arguments are supported:
- machine_id str
- The Juju id of the machine.
- model_uuid str
- The UUID of the model.
getMachine Result
The following output properties are available:
- id str
- The ID of this resource.
- machine_id str
- The Juju id of the machine.
- model_uuid str
- The UUID of the model.
Package Details
- Repository
- juju juju/terraform-provider-juju
- License
- Notes
- This Pulumi package is based on the jujuTerraform Provider.
