terraform/website/source/docs/providers/rabbitmq/r/exchange.html.markdown

1.6 KiB

layout page_title sidebar_current description
rabbitmq RabbitMQ: rabbitmq_exchange docs-rabbitmq-resource-exchange Creates and manages an exchange on a RabbitMQ server.

rabbitmq_exchange

The rabbitmq_exchange resource creates and manages an exchange.

Example Usage

resource "rabbitmq_vhost" "test" {
    name = "test"
}

resource "rabbitmq_permissions" "guest" {
    user = "guest"
    vhost = "${rabbitmq_vhost.test.name}"
    permissions {
        configure = ".*"
        write = ".*"
        read = ".*"
    }
}

resource "rabbitmq_exchange" "test" {
    name = "test"
    vhost = "${rabbitmq_permissions.guest.vhost}"
    settings {
        type = "fanout"
        durable = false
        auto_delete = true
    }
}

Argument Reference

The following arguments are supported:

  • name - (Required) The name of the exchange.

  • vhost - (Required) The vhost to create the resource in.

  • settings - (Required) The settings of the exchange. The structure is described below.

The settings block supports:

  • type - (Required) The type of exchange.

  • durable - (Optional) Whether the exchange survives server restarts. Defaults to false.

  • auto_delete - (Optional) Whether the exchange will self-delete when all queues have finished using it.

  • arguments - (Optional) Additional key/value settings for the exchange.

Attributes Reference

No further attributes are exported.

Import

Exchanges can be imported using the id which is composed of name@vhost. E.g.

terraform import rabbitmq_exchange.test test@vhost