getProducts

This data source provides the Mhub Products of the current Alibaba Cloud user.

NOTE: Available in v1.138.0+.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "example_value";
const _default = new alicloud.mhub.Product("default", {productName: name});
const ids = alicloud.mhub.getProducts({});
export const mhubProductId1 = ids.then(ids => ids.products?.[0]?.id);
const nameRegex = alicloud.mhub.getProducts({
nameRegex: "^my-Product",
});
export const mhubProductId2 = nameRegex.then(nameRegex => nameRegex.products?.[0]?.id);
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "example_value"
default = alicloud.mhub.Product("default", product_name=name)
ids = alicloud.mhub.get_products()
pulumi.export("mhubProductId1", ids.products[0].id)
name_regex = alicloud.mhub.get_products(name_regex="^my-Product")
pulumi.export("mhubProductId2", name_regex.products[0].id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "example_value";
var @default = new AliCloud.Mhub.Product("default", new()
{
ProductName = name,
});
var ids = AliCloud.Mhub.GetProducts.Invoke();
var nameRegex = AliCloud.Mhub.GetProducts.Invoke(new()
{
NameRegex = "^my-Product",
});
return new Dictionary<string, object?>
{
["mhubProductId1"] = ids&#46;Apply(getProductsResult => getProductsResult&#46;Products[0]?.Id),
["mhubProductId2"] = nameRegex&#46;Apply(getProductsResult => getProductsResult&#46;Products[0]?.Id),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mhub"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
name := "example_value"
if param := cfg.Get("name"); param != "" {
name = param
}
_, err := mhub.NewProduct(ctx, "default", &mhub.ProductArgs{
ProductName: pulumi.String(name),
})
if err != nil {
return err
}
ids, err := mhub.GetProducts(ctx, &mhub.GetProductsArgs{}, nil)
if err != nil {
return err
}
ctx.Export("mhubProductId1", ids.Products[0].Id)
nameRegex, err := mhub.GetProducts(ctx, &mhub.GetProductsArgs{
NameRegex: pulumi.StringRef("^my-Product"),
}, nil)
if err != nil {
return err
}
ctx.Export("mhubProductId2", nameRegex.Products[0].Id)
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.mhub.Product;
import com.pulumi.alicloud.mhub.ProductArgs;
import com.pulumi.alicloud.mhub.MhubFunctions;
import com.pulumi.alicloud.mhub.inputs.GetProductsArgs;
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 config = ctx.config();
final var name = config.get("name").orElse("example_value");
var default_ = new Product("default", ProductArgs.builder()
.productName(name)
.build());
final var ids = MhubFunctions.getProducts();
ctx.export("mhubProductId1", ids.applyValue(getProductsResult -> getProductsResult.products()[0].id()));
final var nameRegex = MhubFunctions.getProducts(GetProductsArgs.builder()
.nameRegex("^my-Product")
.build());
ctx.export("mhubProductId2", nameRegex.applyValue(getProductsResult -> getProductsResult.products()[0].id()));
}
}
configuration:
name:
type: string
default: example_value
resources:
default:
type: alicloud:mhub:Product
properties:
productName: ${name}
variables:
ids:
fn::invoke:
function: alicloud:mhub:getProducts
arguments: {}
nameRegex:
fn::invoke:
function: alicloud:mhub:getProducts
arguments:
nameRegex: ^my-Product
outputs:
mhubProductId1: ${ids.products[0].id}
mhubProductId2: ${nameRegex.products[0].id}

Return

A collection of values returned by getProducts.

Parameters

argument

A collection of arguments for invoking getProducts.


suspend fun getProducts(ids: List<String>? = null, nameRegex: String? = null, outputFile: String? = null): GetProductsResult

Return

A collection of values returned by getProducts.

Parameters

ids

A list of Product IDs.

nameRegex

A regex string to filter results by Product name.

outputFile

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

See also


suspend fun getProducts(argument: suspend GetProductsPlainArgsBuilder.() -> Unit): GetProductsResult

Return

A collection of values returned by getProducts.

Parameters

argument

Builder for com.pulumi.alicloud.mhub.kotlin.inputs.GetProductsPlainArgs.

See also