Package @pulumi/rabbitmq
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-rabbitmqrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-rabbitmqrepo.
var rabbitmq = require("@pulumi/rabbitmq");
import * as rabbitmq from "@pulumi/rabbitmq";Modules
Resources
Others
- BindingArgs
- BindingState
- ExchangeArgs
- ExchangeState
- getEnv
- getEnvBoolean
- getEnvNumber
- getVersion
- PermissionsArgs
- PermissionsState
- PolicyArgs
- PolicyState
- ProviderArgs
- QueueArgs
- QueueState
- TopicPermissionsArgs
- TopicPermissionsState
- UserArgs
- UserState
- VHostArgs
- VHostState
Resources
Resource Binding
class Binding extends CustomResourceThe rabbitmq..Binding resource creates and manages a binding relationship
between a queue an exchange.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const testVHost = new rabbitmq.VHost("test", {});
const guest = new rabbitmq.Permissions("guest", {
permissions: {
configure: ".*",
read: ".*",
write: ".*",
},
user: "guest",
vhost: testVHost.name,
});
const testExchange = new rabbitmq.Exchange("test", {
settings: {
autoDelete: true,
durable: false,
type: "fanout",
},
vhost: guest.vhost,
});
const testQueue = new rabbitmq.Queue("test", {
settings: {
autoDelete: false,
durable: true,
},
vhost: guest.vhost,
});
const testBinding = new rabbitmq.Binding("test", {
destination: testQueue.name,
destinationType: "queue",
routingKey: "#",
source: testExchange.name,
vhost: testVHost.name,
});constructor
new Binding(name: string, args: BindingArgs, opts?: pulumi.CustomResourceOptions)Create a Binding resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BindingState, opts?: pulumi.CustomResourceOptions): BindingGet an existing Binding resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is BindingReturns true if the given object is an instance of Binding. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property arguments
public arguments: pulumi.Output<{[key: string]: any} | undefined>;Additional key/value arguments for the binding.
property destination
public destination: pulumi.Output<string>;The destination queue or exchange.
property destinationType
public destinationType: pulumi.Output<string>;The type of destination (queue or exchange).
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property propertiesKey
public propertiesKey: pulumi.Output<string>;A unique key to refer to the binding.
property routingKey
public routingKey: pulumi.Output<string | undefined>;A routing key for the binding.
property source
public source: pulumi.Output<string>;The source exchange.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vhost
public vhost: pulumi.Output<string>;The vhost to create the resource in.
Resource Exchange
class Exchange extends CustomResourceThe rabbitmq..Exchange resource creates and manages an exchange.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const testVHost = new rabbitmq.VHost("test", {});
const guest = new rabbitmq.Permissions("guest", {
permissions: {
configure: ".*",
read: ".*",
write: ".*",
},
user: "guest",
vhost: testVHost.name,
});
const testExchange = new rabbitmq.Exchange("test", {
settings: {
autoDelete: true,
durable: false,
type: "fanout",
},
vhost: guest.vhost,
});constructor
new Exchange(name: string, args: ExchangeArgs, opts?: pulumi.CustomResourceOptions)Create a Exchange resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ExchangeState, opts?: pulumi.CustomResourceOptions): ExchangeGet an existing Exchange resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ExchangeReturns true if the given object is an instance of Exchange. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the exchange.
property settings
public settings: pulumi.Output<ExchangeSettings>;The settings of the exchange. The structure is described below.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vhost
public vhost: pulumi.Output<string | undefined>;The vhost to create the resource in.
Resource Permissions
class Permissions extends CustomResourceThe rabbitmq..Permissions resource creates and manages a user’s set of
permissions.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const testVHost = new rabbitmq.VHost("test", {});
const testUser = new rabbitmq.User("test", {
password: "foobar",
tags: ["administrator"],
});
const testPermissions = new rabbitmq.Permissions("test", {
permissions: {
configure: ".*",
read: ".*",
write: ".*",
},
user: testUser.name,
vhost: testVHost.name,
});constructor
new Permissions(name: string, args: PermissionsArgs, opts?: pulumi.CustomResourceOptions)Create a Permissions resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PermissionsState, opts?: pulumi.CustomResourceOptions): PermissionsGet an existing Permissions resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is PermissionsReturns true if the given object is an instance of Permissions. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property permissions
public permissions: pulumi.Output<PermissionsPermissions>;The settings of the permissions. The structure is described below.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property user
public user: pulumi.Output<string>;The user to apply the permissions to.
property vhost
public vhost: pulumi.Output<string | undefined>;The vhost to create the resource in.
Resource Policy
class Policy extends CustomResourceThe rabbitmq..Policy resource creates and manages policies for exchanges
and queues.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const testVHost = new rabbitmq.VHost("test", {});
const guest = new rabbitmq.Permissions("guest", {
permissions: {
configure: ".*",
read: ".*",
write: ".*",
},
user: "guest",
vhost: testVHost.name,
});
const testPolicy = new rabbitmq.Policy("test", {
policy: {
applyTo: "all",
definition: {
"ha-mode": "all",
},
pattern: ".*",
priority: 0,
},
vhost: guest.vhost,
});constructor
new Policy(name: string, args: PolicyArgs, opts?: pulumi.CustomResourceOptions)Create a Policy resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PolicyState, opts?: pulumi.CustomResourceOptions): PolicyGet an existing Policy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is PolicyReturns true if the given object is an instance of Policy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the policy.
property policy
public policy: pulumi.Output<PolicyPolicy>;The settings of the policy. The structure is described below.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vhost
public vhost: pulumi.Output<string>;The vhost to create the resource in.
Resource Provider
class Provider extends ProviderResourceThe provider type for the rabbitmq package. By default, resources use package-wide configuration
settings, however an explicit Provider instance may be created and passed during resource
construction to achieve fine-grained programmatic control over provider settings. See the
documentation for more information.
constructor
new Provider(name: string, args?: ProviderArgs, opts?: pulumi.ResourceOptions)Create a Provider resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ProviderReturns true if the given object is an instance of Provider. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
method register
static register(provider: ProviderResource | undefined): Promise<string | undefined>property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Queue
class Queue extends CustomResourceThe rabbitmq..Queue resource creates and manages a queue.
Example Usage
Basic Example
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const testVHost = new rabbitmq.VHost("test", {});
const guest = new rabbitmq.Permissions("guest", {
permissions: {
configure: ".*",
read: ".*",
write: ".*",
},
user: "guest",
vhost: testVHost.name,
});
const testQueue = new rabbitmq.Queue("test", {
settings: {
autoDelete: true,
durable: false,
},
vhost: guest.vhost,
});Example With JSON Arguments
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const config = new pulumi.Config();
const arguments = config.get("arguments") || `{
"x-message-ttl": 5000
}
`;
const testVHost = new rabbitmq.VHost("test", {});
const guest = new rabbitmq.Permissions("guest", {
permissions: {
configure: ".*",
read: ".*",
write: ".*",
},
user: "guest",
vhost: testVHost.name,
});
const testQueue = new rabbitmq.Queue("test", {
settings: {
argumentsJson: arguments,
autoDelete: true,
durable: false,
},
vhost: guest.vhost,
});constructor
new Queue(name: string, args: QueueArgs, opts?: pulumi.CustomResourceOptions)Create a Queue resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: QueueState, opts?: pulumi.CustomResourceOptions): QueueGet an existing Queue resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is QueueReturns true if the given object is an instance of Queue. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the queue.
property settings
public settings: pulumi.Output<QueueSettings>;The settings of the queue. The structure is described below.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vhost
public vhost: pulumi.Output<string | undefined>;The vhost to create the resource in.
Resource TopicPermissions
class TopicPermissions extends CustomResourceThe rabbitmq..TopicPermissions resource creates and manages a user’s set of
topic permissions.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const testVHost = new rabbitmq.VHost("test", {});
const testUser = new rabbitmq.User("test", {
password: "foobar",
tags: ["administrator"],
});
const testTopicPermissions = new rabbitmq.TopicPermissions("test", {
permissions: [{
exchange: "amq.topic",
read: ".*",
write: ".*",
}],
user: testUser.name,
vhost: testVHost.name,
});constructor
new TopicPermissions(name: string, args: TopicPermissionsArgs, opts?: pulumi.CustomResourceOptions)Create a TopicPermissions resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TopicPermissionsState, opts?: pulumi.CustomResourceOptions): TopicPermissionsGet an existing TopicPermissions resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is TopicPermissionsReturns true if the given object is an instance of TopicPermissions. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property permissions
public permissions: pulumi.Output<TopicPermissionsPermission[]>;The settings of the permissions. The structure is described below.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property user
public user: pulumi.Output<string>;The user to apply the permissions to.
property vhost
public vhost: pulumi.Output<string | undefined>;The vhost to create the resource in.
Resource User
class User extends CustomResourceThe rabbitmq..User resource creates and manages a user.
Note: All arguments including username and password will be stored in the raw state as plain-text. Read more about sensitive data in state.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const test = new rabbitmq.User("test", {
password: "foobar",
tags: [
"administrator",
"management",
],
});constructor
new User(name: string, args: UserArgs, opts?: pulumi.CustomResourceOptions)Create a User resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: UserState, opts?: pulumi.CustomResourceOptions): UserGet an existing User resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is UserReturns true if the given object is an instance of User. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the user.
property password
public password: pulumi.Output<string>;The password of the user. The value of this argument is plain-text so make sure to secure where this is defined.
property tags
public tags: pulumi.Output<string[] | undefined>;Which permission model to apply to the user. Valid options are: management, policymaker, monitoring, and administrator.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource VHost
class VHost extends CustomResourceThe rabbitmq..VHost resource creates and manages a vhost.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as rabbitmq from "@pulumi/rabbitmq";
const myVhost = new rabbitmq.VHost("myVhost", {});constructor
new VHost(name: string, args?: VHostArgs, opts?: pulumi.CustomResourceOptions)Create a VHost resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VHostState, opts?: pulumi.CustomResourceOptions): VHostGet an existing VHost resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is VHostReturns true if the given object is an instance of VHost. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The name of the vhost.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Others
interface BindingArgs
interface BindingArgsThe set of arguments for constructing a Binding resource.
property arguments
arguments?: pulumi.Input<{[key: string]: any}>;Additional key/value arguments for the binding.
property destination
destination: pulumi.Input<string>;The destination queue or exchange.
property destinationType
destinationType: pulumi.Input<string>;The type of destination (queue or exchange).
property routingKey
routingKey?: pulumi.Input<string>;A routing key for the binding.
property source
source: pulumi.Input<string>;The source exchange.
property vhost
vhost: pulumi.Input<string>;The vhost to create the resource in.
interface BindingState
interface BindingStateInput properties used for looking up and filtering Binding resources.
property arguments
arguments?: pulumi.Input<{[key: string]: any}>;Additional key/value arguments for the binding.
property destination
destination?: pulumi.Input<string>;The destination queue or exchange.
property destinationType
destinationType?: pulumi.Input<string>;The type of destination (queue or exchange).
property propertiesKey
propertiesKey?: pulumi.Input<string>;A unique key to refer to the binding.
property routingKey
routingKey?: pulumi.Input<string>;A routing key for the binding.
property source
source?: pulumi.Input<string>;The source exchange.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface ExchangeArgs
interface ExchangeArgsThe set of arguments for constructing a Exchange resource.
property name
name?: pulumi.Input<string>;The name of the exchange.
property settings
settings: pulumi.Input<ExchangeSettings>;The settings of the exchange. The structure is described below.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface ExchangeState
interface ExchangeStateInput properties used for looking up and filtering Exchange resources.
property name
name?: pulumi.Input<string>;The name of the exchange.
property settings
settings?: pulumi.Input<ExchangeSettings>;The settings of the exchange. The structure is described below.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
function getEnv
getEnv(vars: string[]): string | undefinedfunction getEnvBoolean
getEnvBoolean(vars: string[]): boolean | undefinedfunction getEnvNumber
getEnvNumber(vars: string[]): number | undefinedfunction getVersion
getVersion(): stringinterface PermissionsArgs
interface PermissionsArgsThe set of arguments for constructing a Permissions resource.
property permissions
permissions: pulumi.Input<PermissionsPermissions>;The settings of the permissions. The structure is described below.
property user
user: pulumi.Input<string>;The user to apply the permissions to.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface PermissionsState
interface PermissionsStateInput properties used for looking up and filtering Permissions resources.
property permissions
permissions?: pulumi.Input<PermissionsPermissions>;The settings of the permissions. The structure is described below.
property user
user?: pulumi.Input<string>;The user to apply the permissions to.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface PolicyArgs
interface PolicyArgsThe set of arguments for constructing a Policy resource.
property name
name?: pulumi.Input<string>;The name of the policy.
property policy
policy: pulumi.Input<PolicyPolicy>;The settings of the policy. The structure is described below.
property vhost
vhost: pulumi.Input<string>;The vhost to create the resource in.
interface PolicyState
interface PolicyStateInput properties used for looking up and filtering Policy resources.
property name
name?: pulumi.Input<string>;The name of the policy.
property policy
policy?: pulumi.Input<PolicyPolicy>;The settings of the policy. The structure is described below.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface ProviderArgs
interface ProviderArgsThe set of arguments for constructing a Provider resource.
property cacertFile
cacertFile?: pulumi.Input<string>;property endpoint
endpoint?: pulumi.Input<string>;property insecure
insecure?: pulumi.Input<boolean>;property password
password?: pulumi.Input<string>;property username
username?: pulumi.Input<string>;interface QueueArgs
interface QueueArgsThe set of arguments for constructing a Queue resource.
property name
name?: pulumi.Input<string>;The name of the queue.
property settings
settings: pulumi.Input<QueueSettings>;The settings of the queue. The structure is described below.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface QueueState
interface QueueStateInput properties used for looking up and filtering Queue resources.
property name
name?: pulumi.Input<string>;The name of the queue.
property settings
settings?: pulumi.Input<QueueSettings>;The settings of the queue. The structure is described below.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface TopicPermissionsArgs
interface TopicPermissionsArgsThe set of arguments for constructing a TopicPermissions resource.
property permissions
permissions: pulumi.Input<pulumi.Input<TopicPermissionsPermission>[]>;The settings of the permissions. The structure is described below.
property user
user: pulumi.Input<string>;The user to apply the permissions to.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface TopicPermissionsState
interface TopicPermissionsStateInput properties used for looking up and filtering TopicPermissions resources.
property permissions
permissions?: pulumi.Input<pulumi.Input<TopicPermissionsPermission>[]>;The settings of the permissions. The structure is described below.
property user
user?: pulumi.Input<string>;The user to apply the permissions to.
property vhost
vhost?: pulumi.Input<string>;The vhost to create the resource in.
interface UserArgs
interface UserArgsThe set of arguments for constructing a User resource.
property name
name?: pulumi.Input<string>;The name of the user.
property password
password: pulumi.Input<string>;The password of the user. The value of this argument is plain-text so make sure to secure where this is defined.
property tags
tags?: pulumi.Input<pulumi.Input<string>[]>;Which permission model to apply to the user. Valid options are: management, policymaker, monitoring, and administrator.
interface UserState
interface UserStateInput properties used for looking up and filtering User resources.
property name
name?: pulumi.Input<string>;The name of the user.
property password
password?: pulumi.Input<string>;The password of the user. The value of this argument is plain-text so make sure to secure where this is defined.
property tags
tags?: pulumi.Input<pulumi.Input<string>[]>;Which permission model to apply to the user. Valid options are: management, policymaker, monitoring, and administrator.
interface VHostArgs
interface VHostArgsThe set of arguments for constructing a VHost resource.
property name
name?: pulumi.Input<string>;The name of the vhost.
interface VHostState
interface VHostStateInput properties used for looking up and filtering VHost resources.
property name
name?: pulumi.Input<string>;The name of the vhost.