Skip to content

Commit

Permalink
Doc updates
Browse files Browse the repository at this point in the history
  • Loading branch information
bczoma committed Feb 16, 2024
1 parent 4c7521b commit 7c0e9ea
Show file tree
Hide file tree
Showing 11 changed files with 149 additions and 62 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@ Optional module variables are either shared by multiple types, or conditional to
|[solacebroker_msg_vpn_queue_template](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs/resources/msg_vpn_queue_template#optional)|
|[solacebroker_msg_vpn_topic_endpoint_template](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs/resources/msg_vpn_topic_endpoint_template#optional)|

Most optional variables' default value is null. If they are not provided then the default for the related resource attribute will be configured on the broker.
Most optional variables' default value is `null`, meaning that if not provided then the resource default value will be provisioned on the broker.

-> The module defaults for `ingress_enabled` and `egress_enabled` optional variables are `true`, which differ from the resource attribute defaults.

## Module outputs

Outputs provide references to created resources. Any reference for a resource that has not been created for an endpoint type will be set to `(null)`.
[Module outputs](https://developer.hashicorp.com/terraform/language/values/outputs) provide reference to created resources. Any reference to a resource that has not been created will be set to `(null)`.

## Providers

Expand Down
17 changes: 13 additions & 4 deletions examples/exclusive-queue/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Exclusive Queue Example

Configuration in this directory creates an [exclusive queue](https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-Queues.htm#Configuring_Access_Types_..49?Highlight=exclusive) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates an [exclusive queue](https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-Queues.htm#Configuring_Access_Types_..49?Highlight=exclusive) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

## Module Configuration in the Example

Expand Down Expand Up @@ -33,6 +33,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/exclusive-queue
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -44,9 +53,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
54 changes: 30 additions & 24 deletions examples/exclusive-queue/main.tf
Original file line number Diff line number Diff line change
@@ -1,30 +1,41 @@
# Copyright 2024 Solace Corporation. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Copyright 2024 Solace Corporation. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

provider "solacebroker" {
username = "admin"
password = "admin"
url = "http://localhost:8080"
}

module "exclusive_queue" {
# update with the module location
source = "../.."
# resource "solacebroker_msg_vpn_queue" "exclusive_queue" {
# msg_vpn_name = "default"
# queue_name = "testEQ"

# # permission "consume" enables a messaging client to connect, read and consume messages to/from the queue
# permission = "delete"

# # access_type "exclusive" is the default queue access type. While it has been specified here for clarity, it is not strictly required.
# access_type = "exclusive"

# # ingress and egress are enabled by default in the module, no need to enable here
# # ingress_enabled = true
# # egress_enabled = true
# }

resource "solacebroker_msg_vpn_queue" "exclusive_queue2" {
msg_vpn_name = "default"
endpoint_type = "queue"
endpoint_name = "testEQ"
queue_name = "testEQ"

# permission "consume" enables a messaging client to connect, read and consume messages to/from the queue
permission = "consume"
Expand All @@ -37,8 +48,3 @@ module "exclusive_queue" {
# egress_enabled = true
}

output "provisioned_queue" {
value = module.exclusive_queue.queue
description = "The provisioned queue resource"
}

17 changes: 13 additions & 4 deletions examples/non-exclusive-queue/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Non-exclusive Queue Example

Configuration in this directory creates a [non-exclusive queue](https://docs.solace.com/Get-Started/message-exchange-patterns.htm#Point-to) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates a [non-exclusive queue](https://docs.solace.com/Get-Started/message-exchange-patterns.htm#Point-to) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

## Module Configuration in the Example

Expand Down Expand Up @@ -33,6 +33,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/non-exclusive-queue
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -44,9 +53,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
17 changes: 13 additions & 4 deletions examples/partitioned-queue/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Partitioned Queue Example

Configuration in this directory creates a [partitioned queue](https://docs.solace.com/Messaging/Guaranteed-Msg/Queues.htm#partitioned-queues) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates a [partitioned queue](https://docs.solace.com/Messaging/Guaranteed-Msg/Queues.htm#partitioned-queues) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

## Module Configuration in the Example

Expand Down Expand Up @@ -37,6 +37,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/partitioned-queue
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -48,9 +57,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
17 changes: 13 additions & 4 deletions examples/queue-template/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Queue Template Example

Configuration in this directory creates a [queue template](https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-Endpoint-Templates.htm) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates a [queue template](https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-Endpoint-Templates.htm) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

## Module Configuration in the Example

Expand Down Expand Up @@ -33,6 +33,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/queue-template
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -44,9 +53,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
17 changes: 13 additions & 4 deletions examples/queue-with-jndi/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Queue with JNDI Example

Configuration in this directory creates a [queue that is also exposed as a JNDI administered object](https://docs.solace.com/API/Solace-JMS-API/Managing-Solace-JNDI-Objects.htm) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates a [queue that is also exposed as a JNDI administered object](https://docs.solace.com/API/Solace-JMS-API/Managing-Solace-JNDI-Objects.htm) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

Note that exposing queues as JNDI objects also requires JNDI enabled at the Message VPN level and the configuration of a Connection Factory. The [Service Module](TODO:add link) and the [JNDI Connection Factory Module](TODO:add link) may be used to configure that. This module will not check if they are in place but configuration will fail.

Expand Down Expand Up @@ -38,6 +38,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/queue-with-jndi
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -49,9 +58,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
17 changes: 13 additions & 4 deletions examples/queue-with-topic-subscriptions/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Queue with Topic Subsciptions Example

Configuration in this directory creates a [queue with topic subscriptions](https://docs.solace.com/API/API-Developer-Guide/Adding-Topic-Subscriptio.htm) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates a [queue with topic subscriptions](https://docs.solace.com/API/API-Developer-Guide/Adding-Topic-Subscriptio.htm) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

## Module Configuration in the Example

Expand Down Expand Up @@ -38,6 +38,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/queue-with-topic-subscriptions
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -49,9 +58,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
17 changes: 13 additions & 4 deletions examples/topic-endpoint-template/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Topic Endpoint Template Example

Configuration in this directory creates a [topic endpoint template](https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-Endpoint-Templates.htm) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates a [topic endpoint template](https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-Endpoint-Templates.htm) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

Important: The topic subscription that a topic endpoint will spool messages for is not specified when a topic endpoint template is provisioned. For additional details refer to the [PubSub+ documentation](https://docs.solace.com/Messaging/Guaranteed-Msg/Configuring-DTEs.htm).

Expand Down Expand Up @@ -35,6 +35,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/topic-endpoint-template
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -46,9 +55,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
17 changes: 13 additions & 4 deletions examples/topic-endpoint-with-jndi/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Topic Endpoint with JNDI Example

Configuration in this directory creates a [topic endpoint that is also exposed as a JNDI administered object](https://docs.solace.com/API/Solace-JMS-API/Managing-Solace-JNDI-Objects.htm) on the PubSub+ event broker leveraging the Queue Endpoint Terraform module.
Configuration in this directory creates a [topic endpoint that is also exposed as a JNDI administered object](https://docs.solace.com/API/Solace-JMS-API/Managing-Solace-JNDI-Objects.htm) on the PubSub+ event broker leveraging the Queues & Endpoints Terraform module.

Note that exposing topics as JNDI objects also requires JNDI enabled at the Message VPN level and the configuration of a Connection Factory. The [Service Module](TODO:add link) and the [JNDI Connection Factory Module](TODO:add link) may be used to configure that. This module will not check if they are in place but configuration will fail.

Expand Down Expand Up @@ -38,6 +38,15 @@ This example will create following resources:

If you don't already have access to a broker, refer to the [Developers page](https://www.solace.dev/) for options to get started.

### Sample source code

The sample is available from the module GitHub repo:

```bash
git clone https://github.com/SolaceProducts/terraform-solacebroker-queue-endpoint.git
cd examples/topic-endpoint-with-jndi
```

### Adjust Provider Configuration

Adjust the [provider parameters](https://registry.terraform.io/providers/SolaceProducts/solacebroker/latest/docs#schema) in `main.tf` according to your broker. The example configuration shows settings for a local broker running in Docker.
Expand All @@ -49,9 +58,9 @@ Hint: You can verify configuration changes on the broker, before and after, usin
Execute from this folder:

```bash
$ terraform init
$ terraform plan
$ terraform apply
terraform init
terraform plan
terraform apply
```

Run `terraform destroy` to clean up created resources when no longer needed.
Expand Down
Loading

0 comments on commit 7c0e9ea

Please sign in to comment.