getAttachedVersions function

Future<GetAttachedVersionsResult> getAttachedVersions(
  1. GetAttachedVersionsArgs args, {
  2. InvokeOptions? options,
})

Provides access to available platform versions in a location for a given project.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const uswest = gcp.container.getAttachedVersions({
    location: "us-west1",
    project: "my-project",
});
export const firstAvailableVersion = uswest.then(uswest => uswest.validVersions?.[0]);
import pulumi
import pulumi_gcp as gcp

uswest = gcp.container.get_attached_versions(location="us-west1",
    project="my-project")
pulumi.export("firstAvailableVersion", uswest.valid_versions[0])
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;

return await Deployment.RunAsync(() =>
{
    var uswest = Gcp.Container.GetAttachedVersions.Invoke(new()
    {
        Location = "us-west1",
        Project = "my-project",
    });

    return new Dictionary<string, object?>
    {
        ["firstAvailableVersion"] = uswest.Apply(getAttachedVersionsResult => getAttachedVersionsResult.ValidVersions[0]),
    };
});
package main

import (
	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/container"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		uswest, err := container.GetAttachedVersions(ctx, &container.GetAttachedVersionsArgs{
			Location: "us-west1",
			Project:  "my-project",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("firstAvailableVersion", uswest.ValidVersions[0])
		return nil
	})
}
pulumi {
  required_providers {
    gcp = {
      source = "pulumi/gcp"
    }
  }
}

data "gcp_container_getattachedversions" "uswest" {
  location = "us-west1"
  project  = "my-project"
}

output "firstAvailableVersion" {
  value = data.gcp_container_getattachedversions.uswest.valid_versions[0]
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.container.ContainerFunctions;
import com.pulumi.gcp.container.inputs.GetAttachedVersionsArgs;
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 uswest = ContainerFunctions.getAttachedVersions(GetAttachedVersionsArgs.builder()
            .location("us-west1")
            .project("my-project")
            .build());

        ctx.export("firstAvailableVersion", uswest.validVersions()[0]);
    }
}
variables:
  uswest:
    fn::invoke:
      function: gcp:container:getAttachedVersions
      arguments:
        location: us-west1
        project: my-project
outputs:
  firstAvailableVersion: ${uswest.validVersions[0]}

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

Implementation

Future<GetAttachedVersionsResult> getAttachedVersions(
  GetAttachedVersionsArgs args, {
  pulumi.InvokeOptions? options,
}) async {
  final deployment = pulumi.Deployment.instance;
  final result = await deployment.invoke<Map<String, dynamic>>(
    'gcp:container/getAttachedVersions:getAttachedVersions',
    args.toMap(),
    options: pulumi.toDeploymentInvokeOptions(options),
  );
  return GetAttachedVersionsResult.fromMap(result);
}