This Terraform module configures a "guaranteed messaging endpoint" or an "endpoint template" on the Solace PubSub+ Appliance.
This module supports the configuration of one of the following:
-
a "queue" or a "topic endpoint": applications that make use of Guaranteed Messaging, need endpoints configured on the event broker to persist messages. A queue may also have a list of topic subscriptions.
-
a "queue template" or a "topic endpoint template": Endpoint templates may be used for new client created endpoints.
The module also supports exposing a created queue or topic endpoint via JNDI for JMS applications.
Use case details are provided in the Examples section.
msg_vpn_name
- Endpoints and endpoint templates are specific to a Message VPN on the broker.endpoint_type
- The type of the endpoint or template to be created. Only one type is allowed at a time.endpoint_name
- The name of the endpoint or template to be created.permission
- Queues or topic endpoints must have a validowner
orpermission
for non-owners configured to enable clients to connect and consume messages. Consider the security implications when choosing a value. For more information, see the PubSub+ documentation.
Optional module variables are either shared by multiple types, or conditional to the type where incompatible variables will be ignored. For example, the permission
variable is shared by all endpoint and template types but queue_name_filter
is specific to the queue_template
type and ignored for other types. To determine the variable name mappings, we recommend that you look for matching attribute names in the documentation for the endpoint or template resource:
Resource name |
---|
solacebroker_msg_vpn_queue |
solacebroker_msg_vpn_topic_endpoint |
solacebroker_msg_vpn_queue_template |
solacebroker_msg_vpn_topic_endpoint_template |
The default value for most of the optional variables is null
, meaning that if you don’t provide a value then the default value of the resource is provisioned on the event broker.
-> The module defaults for ingress_enabled
and egress_enabled
optional variables are true
, which differ from the resource attribute defaults.
Module outputs provide reference to created resources. Any reference to a resource that has not been created will be set to (null)
.
Name | Version |
---|---|
solacebrokerappliance | >= 1.0 |
The following table shows the resources created for each endpoint-type
value. "X" denotes a resource that is always created, "O" denotes a resource that you have the option to create.
Name | queue | topic_endpoint | queue_template | topic_endpoint_template |
---|---|---|---|---|
solacebroker_msg_vpn_queue | X | |||
solacebroker_msg_vpn_jndi_queue | O | |||
solacebroker_msg_vpn_queue_subscription | O | |||
solacebroker_msg_vpn_topic_endpoint | X | |||
solacebroker_msg_vpn_jndi_topic | O | |||
solacebroker_msg_vpn_queue_template | X | |||
solacebroker_msg_vpn_topic_endpoint_template | X |
The following examples demonstrate several specific use cases for this module:
This module is expected to be used primarily by application teams. It supports provisioning endpoints or templates required by a specific application. It may be forked and adjusted with private defaults.
For more information about Solace technology in general please visit these resources:
- Solace Technical Documentation
- The Solace Developer Portal website at: solace.dev
- Understanding Solace technology
- Ask the Solace community.