This provider, maintained by Solace, is a plugin for Terraform that enables you to configure PubSub+ Software Event Brokers.
The provider is available from the Terraform Providers Registry.
The minimum required PubSub+ Software Event Broker version is 10.4.
- Ensure you have admin access to a Solace PubSub+ Software Event Broker. Options include local deployment of a containerized version or use of a free broker from PubSub+ Cloud.
- Install the Terraform CLI
- Create the
examples/sampleconfig.tf
sample file in a new directory, adjust theurl
, and the management credential parametersusername
andpassword
to your broker's setup. - From this directory run
terraform plan
, thenterraform apply
(if prompted,terraform init
may also be required). - Open the
url
link in your browser to access the broker's web management UI. The credentials are the same as used in the Terraform config. Observe the new objects created: a new Message VPN and a messaging queue under that Message VPN. - Run
terraform destroy
from your command line and observe that the Message VPN is deleted.
Note that the provider also offers the unique ability to generate a config file from an already configured broker. For more information, refer to the full documentation.
Full documentation is available on the Terraform Providers Registry website.
We recommended that you familiarize yourself with Solace technology and broker management. For more information, refer to the Resources section.
git clone
this repository andcd
into its directory.make install
will trigger the Golang build of the provider in your${GOBIN}
(defaults to${GOPATH}/bin
or${HOME}/go/bin
if${GOPATH}
is not set). Repeat this every time you make changes to the provider locally.
The provided makefile
defines additional commands that are useful during development.
Create or update your ${HOME}/.terraformrc
(Unix) / %APPDATA%\terraform.rc
(Windows) configuration with a provider_installation
section that contains the following dev_overrides
:
provider_installation {
dev_overrides {
"registry.terraform.io/solaceproducts/solacebroker" = "${GOBIN}" //< replace `${GOBIN}` with the actual path on your system
}
direct {}
}
Note that it is also possible to use a dedicated Terraform configuration file and invoke terraform
while setting
the environment variable TF_CLI_CONFIG_FILE=my_terraform_config_file
.
Once the dev_overrides
are in place, any local execution of terraform plan
and terraform apply
will
use the version of the provider found in the given ${GOBIN}
directory, instead of the one indicated in your terraform configuration.
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
This project is licensed under the Apache License, Version 2.0. - See the LICENSE file for details.
For more information about Solace technology in general please visit these resources:
- Understanding Solace technology
- The Solace Developer Portal website at: solace.dev
- Ask the Solace community.