1. Packages
  2. Meraki Provider
  3. API Docs
  4. networks
  5. MqttBrokers
Cisco Meraki v0.3.2 published on Tuesday, Sep 24, 2024 by Pulumi

meraki.networks.MqttBrokers

Explore with Pulumi AI

meraki logo
Cisco Meraki v0.3.2 published on Tuesday, Sep 24, 2024 by Pulumi

    ~>Warning: This resource does not represent a real-world entity in Meraki Dashboard, therefore changing or deleting this resource on its own has no immediate effect. Instead, it is a task part of a Meraki Dashboard workflow. It is executed in Meraki without any additional verification. It does not check if it was executed before or if a similar configuration or action already existed previously.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as meraki from "@pulumi/meraki";
    
    const example = new meraki.networks.MqttBrokers("example", {
        networkId: "string",
        parameters: {
            authentication: {
                password: "*****",
                username: "milesmeraki",
            },
            host: "1.2.3.4",
            name: "MQTT_Broker_1",
            port: 443,
            security: {
                mode: "tls",
                tls: {
                    caCertificate: "*****",
                    verifyHostnames: true,
                },
            },
        },
    });
    export const merakiNetworksMqttBrokersExample = example;
    
    import pulumi
    import pulumi_meraki as meraki
    
    example = meraki.networks.MqttBrokers("example",
        network_id="string",
        parameters={
            "authentication": {
                "password": "*****",
                "username": "milesmeraki",
            },
            "host": "1.2.3.4",
            "name": "MQTT_Broker_1",
            "port": 443,
            "security": {
                "mode": "tls",
                "tls": {
                    "ca_certificate": "*****",
                    "verify_hostnames": True,
                },
            },
        })
    pulumi.export("merakiNetworksMqttBrokersExample", example)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-meraki/sdk/go/meraki/networks"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := networks.NewMqttBrokers(ctx, "example", &networks.MqttBrokersArgs{
    			NetworkId: pulumi.String("string"),
    			Parameters: &networks.MqttBrokersParametersArgs{
    				Authentication: &networks.MqttBrokersParametersAuthenticationArgs{
    					Password: pulumi.String("*****"),
    					Username: pulumi.String("milesmeraki"),
    				},
    				Host: pulumi.String("1.2.3.4"),
    				Name: pulumi.String("MQTT_Broker_1"),
    				Port: pulumi.Int(443),
    				Security: &networks.MqttBrokersParametersSecurityArgs{
    					Mode: pulumi.String("tls"),
    					Tls: &networks.MqttBrokersParametersSecurityTlsArgs{
    						CaCertificate:   pulumi.String("*****"),
    						VerifyHostnames: pulumi.Bool(true),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		ctx.Export("merakiNetworksMqttBrokersExample", example)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Meraki = Pulumi.Meraki;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Meraki.Networks.MqttBrokers("example", new()
        {
            NetworkId = "string",
            Parameters = new Meraki.Networks.Inputs.MqttBrokersParametersArgs
            {
                Authentication = new Meraki.Networks.Inputs.MqttBrokersParametersAuthenticationArgs
                {
                    Password = "*****",
                    Username = "milesmeraki",
                },
                Host = "1.2.3.4",
                Name = "MQTT_Broker_1",
                Port = 443,
                Security = new Meraki.Networks.Inputs.MqttBrokersParametersSecurityArgs
                {
                    Mode = "tls",
                    Tls = new Meraki.Networks.Inputs.MqttBrokersParametersSecurityTlsArgs
                    {
                        CaCertificate = "*****",
                        VerifyHostnames = true,
                    },
                },
            },
        });
    
        return new Dictionary<string, object?>
        {
            ["merakiNetworksMqttBrokersExample"] = example,
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.meraki.networks.MqttBrokers;
    import com.pulumi.meraki.networks.MqttBrokersArgs;
    import com.pulumi.meraki.networks.inputs.MqttBrokersParametersArgs;
    import com.pulumi.meraki.networks.inputs.MqttBrokersParametersAuthenticationArgs;
    import com.pulumi.meraki.networks.inputs.MqttBrokersParametersSecurityArgs;
    import com.pulumi.meraki.networks.inputs.MqttBrokersParametersSecurityTlsArgs;
    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) {
            var example = new MqttBrokers("example", MqttBrokersArgs.builder()
                .networkId("string")
                .parameters(MqttBrokersParametersArgs.builder()
                    .authentication(MqttBrokersParametersAuthenticationArgs.builder()
                        .password("*****")
                        .username("milesmeraki")
                        .build())
                    .host("1.2.3.4")
                    .name("MQTT_Broker_1")
                    .port(443)
                    .security(MqttBrokersParametersSecurityArgs.builder()
                        .mode("tls")
                        .tls(MqttBrokersParametersSecurityTlsArgs.builder()
                            .caCertificate("*****")
                            .verifyHostnames(true)
                            .build())
                        .build())
                    .build())
                .build());
    
            ctx.export("merakiNetworksMqttBrokersExample", example);
        }
    }
    
    resources:
      example:
        type: meraki:networks:MqttBrokers
        properties:
          networkId: string
          parameters:
            authentication:
              password: '*****'
              username: milesmeraki
            host: 1.2.3.4
            name: MQTT_Broker_1
            port: 443
            security:
              mode: tls
              tls:
                caCertificate: '*****'
                verifyHostnames: true
    outputs:
      merakiNetworksMqttBrokersExample: ${example}
    

    Create MqttBrokers Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new MqttBrokers(name: string, args: MqttBrokersArgs, opts?: CustomResourceOptions);
    @overload
    def MqttBrokers(resource_name: str,
                    args: MqttBrokersArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def MqttBrokers(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    network_id: Optional[str] = None,
                    parameters: Optional[MqttBrokersParametersArgs] = None)
    func NewMqttBrokers(ctx *Context, name string, args MqttBrokersArgs, opts ...ResourceOption) (*MqttBrokers, error)
    public MqttBrokers(string name, MqttBrokersArgs args, CustomResourceOptions? opts = null)
    public MqttBrokers(String name, MqttBrokersArgs args)
    public MqttBrokers(String name, MqttBrokersArgs args, CustomResourceOptions options)
    
    type: meraki:networks:MqttBrokers
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args MqttBrokersArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args MqttBrokersArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args MqttBrokersArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args MqttBrokersArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args MqttBrokersArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var mqttBrokersResource = new Meraki.Networks.MqttBrokers("mqttBrokersResource", new()
    {
        NetworkId = "string",
        Parameters = new Meraki.Networks.Inputs.MqttBrokersParametersArgs
        {
            Authentication = new Meraki.Networks.Inputs.MqttBrokersParametersAuthenticationArgs
            {
                Password = "string",
                Username = "string",
            },
            Host = "string",
            Name = "string",
            Port = 0,
            Security = new Meraki.Networks.Inputs.MqttBrokersParametersSecurityArgs
            {
                Mode = "string",
                Tls = new Meraki.Networks.Inputs.MqttBrokersParametersSecurityTlsArgs
                {
                    CaCertificate = "string",
                    VerifyHostnames = false,
                },
            },
        },
    });
    
    example, err := networks.NewMqttBrokers(ctx, "mqttBrokersResource", &networks.MqttBrokersArgs{
    	NetworkId: pulumi.String("string"),
    	Parameters: &networks.MqttBrokersParametersArgs{
    		Authentication: &networks.MqttBrokersParametersAuthenticationArgs{
    			Password: pulumi.String("string"),
    			Username: pulumi.String("string"),
    		},
    		Host: pulumi.String("string"),
    		Name: pulumi.String("string"),
    		Port: pulumi.Int(0),
    		Security: &networks.MqttBrokersParametersSecurityArgs{
    			Mode: pulumi.String("string"),
    			Tls: &networks.MqttBrokersParametersSecurityTlsArgs{
    				CaCertificate:   pulumi.String("string"),
    				VerifyHostnames: pulumi.Bool(false),
    			},
    		},
    	},
    })
    
    var mqttBrokersResource = new MqttBrokers("mqttBrokersResource", MqttBrokersArgs.builder()
        .networkId("string")
        .parameters(MqttBrokersParametersArgs.builder()
            .authentication(MqttBrokersParametersAuthenticationArgs.builder()
                .password("string")
                .username("string")
                .build())
            .host("string")
            .name("string")
            .port(0)
            .security(MqttBrokersParametersSecurityArgs.builder()
                .mode("string")
                .tls(MqttBrokersParametersSecurityTlsArgs.builder()
                    .caCertificate("string")
                    .verifyHostnames(false)
                    .build())
                .build())
            .build())
        .build());
    
    mqtt_brokers_resource = meraki.networks.MqttBrokers("mqttBrokersResource",
        network_id="string",
        parameters={
            "authentication": {
                "password": "string",
                "username": "string",
            },
            "host": "string",
            "name": "string",
            "port": 0,
            "security": {
                "mode": "string",
                "tls": {
                    "ca_certificate": "string",
                    "verify_hostnames": False,
                },
            },
        })
    
    const mqttBrokersResource = new meraki.networks.MqttBrokers("mqttBrokersResource", {
        networkId: "string",
        parameters: {
            authentication: {
                password: "string",
                username: "string",
            },
            host: "string",
            name: "string",
            port: 0,
            security: {
                mode: "string",
                tls: {
                    caCertificate: "string",
                    verifyHostnames: false,
                },
            },
        },
    });
    
    type: meraki:networks:MqttBrokers
    properties:
        networkId: string
        parameters:
            authentication:
                password: string
                username: string
            host: string
            name: string
            port: 0
            security:
                mode: string
                tls:
                    caCertificate: string
                    verifyHostnames: false
    

    MqttBrokers Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The MqttBrokers resource accepts the following input properties:

    NetworkId string
    networkId path parameter. Network ID
    Parameters MqttBrokersParameters
    NetworkId string
    networkId path parameter. Network ID
    Parameters MqttBrokersParametersArgs
    networkId String
    networkId path parameter. Network ID
    parameters MqttBrokersParameters
    networkId string
    networkId path parameter. Network ID
    parameters MqttBrokersParameters
    network_id str
    networkId path parameter. Network ID
    parameters MqttBrokersParametersArgs
    networkId String
    networkId path parameter. Network ID
    parameters Property Map

    Outputs

    All input properties are implicitly available as output properties. Additionally, the MqttBrokers resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Item MqttBrokersItem
    Id string
    The provider-assigned unique ID for this managed resource.
    Item MqttBrokersItem
    id String
    The provider-assigned unique ID for this managed resource.
    item MqttBrokersItem
    id string
    The provider-assigned unique ID for this managed resource.
    item MqttBrokersItem
    id str
    The provider-assigned unique ID for this managed resource.
    item MqttBrokersItem
    id String
    The provider-assigned unique ID for this managed resource.
    item Property Map

    Look up Existing MqttBrokers Resource

    Get an existing MqttBrokers resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: MqttBrokersState, opts?: CustomResourceOptions): MqttBrokers
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            item: Optional[MqttBrokersItemArgs] = None,
            network_id: Optional[str] = None,
            parameters: Optional[MqttBrokersParametersArgs] = None) -> MqttBrokers
    func GetMqttBrokers(ctx *Context, name string, id IDInput, state *MqttBrokersState, opts ...ResourceOption) (*MqttBrokers, error)
    public static MqttBrokers Get(string name, Input<string> id, MqttBrokersState? state, CustomResourceOptions? opts = null)
    public static MqttBrokers get(String name, Output<String> id, MqttBrokersState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Item MqttBrokersItem
    NetworkId string
    networkId path parameter. Network ID
    Parameters MqttBrokersParameters
    Item MqttBrokersItemArgs
    NetworkId string
    networkId path parameter. Network ID
    Parameters MqttBrokersParametersArgs
    item MqttBrokersItem
    networkId String
    networkId path parameter. Network ID
    parameters MqttBrokersParameters
    item MqttBrokersItem
    networkId string
    networkId path parameter. Network ID
    parameters MqttBrokersParameters
    item Property Map
    networkId String
    networkId path parameter. Network ID
    parameters Property Map

    Supporting Types

    MqttBrokersItem, MqttBrokersItemArgs

    Authentication MqttBrokersItemAuthentication
    Authentication settings of the MQTT broker
    Host string
    Host name/IP address where the MQTT broker runs.
    Id string
    ID of the MQTT Broker.
    Name string
    Name of the MQTT Broker.
    Port int
    Host port though which the MQTT broker can be reached.
    Security MqttBrokersItemSecurity
    Security settings of the MQTT broker.
    Authentication MqttBrokersItemAuthentication
    Authentication settings of the MQTT broker
    Host string
    Host name/IP address where the MQTT broker runs.
    Id string
    ID of the MQTT Broker.
    Name string
    Name of the MQTT Broker.
    Port int
    Host port though which the MQTT broker can be reached.
    Security MqttBrokersItemSecurity
    Security settings of the MQTT broker.
    authentication MqttBrokersItemAuthentication
    Authentication settings of the MQTT broker
    host String
    Host name/IP address where the MQTT broker runs.
    id String
    ID of the MQTT Broker.
    name String
    Name of the MQTT Broker.
    port Integer
    Host port though which the MQTT broker can be reached.
    security MqttBrokersItemSecurity
    Security settings of the MQTT broker.
    authentication MqttBrokersItemAuthentication
    Authentication settings of the MQTT broker
    host string
    Host name/IP address where the MQTT broker runs.
    id string
    ID of the MQTT Broker.
    name string
    Name of the MQTT Broker.
    port number
    Host port though which the MQTT broker can be reached.
    security MqttBrokersItemSecurity
    Security settings of the MQTT broker.
    authentication MqttBrokersItemAuthentication
    Authentication settings of the MQTT broker
    host str
    Host name/IP address where the MQTT broker runs.
    id str
    ID of the MQTT Broker.
    name str
    Name of the MQTT Broker.
    port int
    Host port though which the MQTT broker can be reached.
    security MqttBrokersItemSecurity
    Security settings of the MQTT broker.
    authentication Property Map
    Authentication settings of the MQTT broker
    host String
    Host name/IP address where the MQTT broker runs.
    id String
    ID of the MQTT Broker.
    name String
    Name of the MQTT Broker.
    port Number
    Host port though which the MQTT broker can be reached.
    security Property Map
    Security settings of the MQTT broker.

    MqttBrokersItemAuthentication, MqttBrokersItemAuthenticationArgs

    Username string
    Username for the MQTT broker.
    Username string
    Username for the MQTT broker.
    username String
    Username for the MQTT broker.
    username string
    Username for the MQTT broker.
    username str
    Username for the MQTT broker.
    username String
    Username for the MQTT broker.

    MqttBrokersItemSecurity, MqttBrokersItemSecurityArgs

    Mode string
    Security protocol of the MQTT broker.
    Tls MqttBrokersItemSecurityTls
    TLS settings of the MQTT broker.
    Mode string
    Security protocol of the MQTT broker.
    Tls MqttBrokersItemSecurityTls
    TLS settings of the MQTT broker.
    mode String
    Security protocol of the MQTT broker.
    tls MqttBrokersItemSecurityTls
    TLS settings of the MQTT broker.
    mode string
    Security protocol of the MQTT broker.
    tls MqttBrokersItemSecurityTls
    TLS settings of the MQTT broker.
    mode str
    Security protocol of the MQTT broker.
    tls MqttBrokersItemSecurityTls
    TLS settings of the MQTT broker.
    mode String
    Security protocol of the MQTT broker.
    tls Property Map
    TLS settings of the MQTT broker.

    MqttBrokersItemSecurityTls, MqttBrokersItemSecurityTlsArgs

    HasCaCertificate bool
    Indicates whether the CA certificate is set
    VerifyHostnames bool
    Whether the TLS hostname verification is enabled for the MQTT broker.
    HasCaCertificate bool
    Indicates whether the CA certificate is set
    VerifyHostnames bool
    Whether the TLS hostname verification is enabled for the MQTT broker.
    hasCaCertificate Boolean
    Indicates whether the CA certificate is set
    verifyHostnames Boolean
    Whether the TLS hostname verification is enabled for the MQTT broker.
    hasCaCertificate boolean
    Indicates whether the CA certificate is set
    verifyHostnames boolean
    Whether the TLS hostname verification is enabled for the MQTT broker.
    has_ca_certificate bool
    Indicates whether the CA certificate is set
    verify_hostnames bool
    Whether the TLS hostname verification is enabled for the MQTT broker.
    hasCaCertificate Boolean
    Indicates whether the CA certificate is set
    verifyHostnames Boolean
    Whether the TLS hostname verification is enabled for the MQTT broker.

    MqttBrokersParameters, MqttBrokersParametersArgs

    Authentication MqttBrokersParametersAuthentication
    Authentication settings of the MQTT broker
    Host string
    Host name/IP address where the MQTT broker runs.
    Name string
    Name of the MQTT broker.
    Port int
    Host port though which the MQTT broker can be reached.
    Security MqttBrokersParametersSecurity
    Security settings of the MQTT broker.
    Authentication MqttBrokersParametersAuthentication
    Authentication settings of the MQTT broker
    Host string
    Host name/IP address where the MQTT broker runs.
    Name string
    Name of the MQTT broker.
    Port int
    Host port though which the MQTT broker can be reached.
    Security MqttBrokersParametersSecurity
    Security settings of the MQTT broker.
    authentication MqttBrokersParametersAuthentication
    Authentication settings of the MQTT broker
    host String
    Host name/IP address where the MQTT broker runs.
    name String
    Name of the MQTT broker.
    port Integer
    Host port though which the MQTT broker can be reached.
    security MqttBrokersParametersSecurity
    Security settings of the MQTT broker.
    authentication MqttBrokersParametersAuthentication
    Authentication settings of the MQTT broker
    host string
    Host name/IP address where the MQTT broker runs.
    name string
    Name of the MQTT broker.
    port number
    Host port though which the MQTT broker can be reached.
    security MqttBrokersParametersSecurity
    Security settings of the MQTT broker.
    authentication MqttBrokersParametersAuthentication
    Authentication settings of the MQTT broker
    host str
    Host name/IP address where the MQTT broker runs.
    name str
    Name of the MQTT broker.
    port int
    Host port though which the MQTT broker can be reached.
    security MqttBrokersParametersSecurity
    Security settings of the MQTT broker.
    authentication Property Map
    Authentication settings of the MQTT broker
    host String
    Host name/IP address where the MQTT broker runs.
    name String
    Name of the MQTT broker.
    port Number
    Host port though which the MQTT broker can be reached.
    security Property Map
    Security settings of the MQTT broker.

    MqttBrokersParametersAuthentication, MqttBrokersParametersAuthenticationArgs

    Password string
    Password for the MQTT broker.
    Username string
    Username for the MQTT broker.
    Password string
    Password for the MQTT broker.
    Username string
    Username for the MQTT broker.
    password String
    Password for the MQTT broker.
    username String
    Username for the MQTT broker.
    password string
    Password for the MQTT broker.
    username string
    Username for the MQTT broker.
    password str
    Password for the MQTT broker.
    username str
    Username for the MQTT broker.
    password String
    Password for the MQTT broker.
    username String
    Username for the MQTT broker.

    MqttBrokersParametersSecurity, MqttBrokersParametersSecurityArgs

    Mode string
    Security protocol of the MQTT broker.
    Tls MqttBrokersParametersSecurityTls
    TLS settings of the MQTT broker.
    Mode string
    Security protocol of the MQTT broker.
    Tls MqttBrokersParametersSecurityTls
    TLS settings of the MQTT broker.
    mode String
    Security protocol of the MQTT broker.
    tls MqttBrokersParametersSecurityTls
    TLS settings of the MQTT broker.
    mode string
    Security protocol of the MQTT broker.
    tls MqttBrokersParametersSecurityTls
    TLS settings of the MQTT broker.
    mode str
    Security protocol of the MQTT broker.
    tls MqttBrokersParametersSecurityTls
    TLS settings of the MQTT broker.
    mode String
    Security protocol of the MQTT broker.
    tls Property Map
    TLS settings of the MQTT broker.

    MqttBrokersParametersSecurityTls, MqttBrokersParametersSecurityTlsArgs

    CaCertificate string
    CA Certificate of the MQTT broker.
    VerifyHostnames bool
    Whether the TLS hostname verification is enabled for the MQTT broker.
    CaCertificate string
    CA Certificate of the MQTT broker.
    VerifyHostnames bool
    Whether the TLS hostname verification is enabled for the MQTT broker.
    caCertificate String
    CA Certificate of the MQTT broker.
    verifyHostnames Boolean
    Whether the TLS hostname verification is enabled for the MQTT broker.
    caCertificate string
    CA Certificate of the MQTT broker.
    verifyHostnames boolean
    Whether the TLS hostname verification is enabled for the MQTT broker.
    ca_certificate str
    CA Certificate of the MQTT broker.
    verify_hostnames bool
    Whether the TLS hostname verification is enabled for the MQTT broker.
    caCertificate String
    CA Certificate of the MQTT broker.
    verifyHostnames Boolean
    Whether the TLS hostname verification is enabled for the MQTT broker.

    Package Details

    Repository
    meraki pulumi/pulumi-meraki
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the meraki Terraform Provider.
    meraki logo
    Cisco Meraki v0.3.2 published on Tuesday, Sep 24, 2024 by Pulumi