@pulumi/cloudamqp 3.35.1 → 3.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/integrationLog.d.ts +2 -2
- package/integrationLog.js +2 -2
- package/oauth2Configuration.d.ts +129 -8
- package/oauth2Configuration.d.ts.map +1 -1
- package/oauth2Configuration.js +82 -2
- package/oauth2Configuration.js.map +1 -1
- package/package.json +2 -2
package/integrationLog.d.ts
CHANGED
|
@@ -7,11 +7,11 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
7
7
|
*
|
|
8
8
|
* Only available for dedicated subscription plans.
|
|
9
9
|
*
|
|
10
|
-
* > **Note:** For `cloudwatch`, `coralogix`, `datadog`, `stackdriver` (Google Cloud), and `splunk`, we
|
|
10
|
+
* > **Note:** For `azure monitor`, `cloudwatch`, `coralogix`, `datadog`, `stackdriver` (Google Cloud), and `splunk`, we
|
|
11
11
|
* recommend the newer, **OpenTelemetry**-based [`cloudamqp.IntegrationLogAgent`][log-agent] resource instead
|
|
12
12
|
* of this one. It delivers structured log data and is where new log integration features land going
|
|
13
13
|
* forward. This resource remains fully supported for integrations without an agent-based equivalent
|
|
14
|
-
* (Papertrail, Loggly, Logentries, DataSet/Scalyr
|
|
14
|
+
* (Papertrail, Loggly, Logentries, DataSet/Scalyr).
|
|
15
15
|
*
|
|
16
16
|
* [log-agent]: integration_log_agent.md
|
|
17
17
|
*
|
package/integrationLog.js
CHANGED
|
@@ -36,11 +36,11 @@ const utilities = __importStar(require("./utilities"));
|
|
|
36
36
|
*
|
|
37
37
|
* Only available for dedicated subscription plans.
|
|
38
38
|
*
|
|
39
|
-
* > **Note:** For `cloudwatch`, `coralogix`, `datadog`, `stackdriver` (Google Cloud), and `splunk`, we
|
|
39
|
+
* > **Note:** For `azure monitor`, `cloudwatch`, `coralogix`, `datadog`, `stackdriver` (Google Cloud), and `splunk`, we
|
|
40
40
|
* recommend the newer, **OpenTelemetry**-based [`cloudamqp.IntegrationLogAgent`][log-agent] resource instead
|
|
41
41
|
* of this one. It delivers structured log data and is where new log integration features land going
|
|
42
42
|
* forward. This resource remains fully supported for integrations without an agent-based equivalent
|
|
43
|
-
* (Papertrail, Loggly, Logentries, DataSet/Scalyr
|
|
43
|
+
* (Papertrail, Loggly, Logentries, DataSet/Scalyr).
|
|
44
44
|
*
|
|
45
45
|
* [log-agent]: integration_log_agent.md
|
|
46
46
|
*
|
package/oauth2Configuration.d.ts
CHANGED
|
@@ -2,9 +2,14 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
2
2
|
/**
|
|
3
3
|
* <!-- markdownlint-disable MD033 -->
|
|
4
4
|
*
|
|
5
|
-
* This resource allows you to configure OAuth2 authentication for your RabbitMQ instance.
|
|
5
|
+
* This resource allows you to configure OAuth2 authentication for your RabbitMQ or LavinMQ instance.
|
|
6
6
|
*
|
|
7
|
-
* Only available for dedicated subscription plans running ***RabbitMQ***.
|
|
7
|
+
* Only available for dedicated subscription plans running ***RabbitMQ*** or ***LavinMQ***. LavinMQ
|
|
8
|
+
* requires version 2.7.0 or newer.
|
|
9
|
+
*
|
|
10
|
+
* The resource looks up which broker the instance runs when creating or updating the configuration.
|
|
11
|
+
* Some attributes are only supported by one of the brokers, see Broker support.
|
|
12
|
+
* Setting an attribute the broker doesn't support fails the apply with an error.
|
|
8
13
|
*
|
|
9
14
|
* ## Example Usage
|
|
10
15
|
*
|
|
@@ -93,6 +98,74 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
93
98
|
*
|
|
94
99
|
* </details>
|
|
95
100
|
*
|
|
101
|
+
* <details>
|
|
102
|
+
* <summary>
|
|
103
|
+
* <b>
|
|
104
|
+
* <i>LavinMQ OAuth2 configuration</i>
|
|
105
|
+
* </b>
|
|
106
|
+
* </summary>
|
|
107
|
+
*
|
|
108
|
+
* ```typescript
|
|
109
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
110
|
+
* import * as cloudamqp from "@pulumi/cloudamqp";
|
|
111
|
+
*
|
|
112
|
+
* const oauth2Config = new cloudamqp.Oauth2Configuration("oauth2_config", {
|
|
113
|
+
* instanceId: Number(instance.id),
|
|
114
|
+
* issuer: "https://auth.example.com/realms/lavinmq",
|
|
115
|
+
* resourceServerId: "lavinmq",
|
|
116
|
+
* verifyAud: true,
|
|
117
|
+
* preferredUsernameClaims: ["preferred_username"],
|
|
118
|
+
* });
|
|
119
|
+
* ```
|
|
120
|
+
*
|
|
121
|
+
* </details>
|
|
122
|
+
*
|
|
123
|
+
* <details>
|
|
124
|
+
* <summary>
|
|
125
|
+
* <b>
|
|
126
|
+
* <i>LavinMQ OAuth2 configuration with management UI SSO login</i>
|
|
127
|
+
* </b>
|
|
128
|
+
* </summary>
|
|
129
|
+
*
|
|
130
|
+
* Requires LavinMQ 2.9.0 or newer, and 2.9.1 or newer for `mgmtScopes`.
|
|
131
|
+
*
|
|
132
|
+
* ```typescript
|
|
133
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
134
|
+
* import * as cloudamqp from "@pulumi/cloudamqp";
|
|
135
|
+
*
|
|
136
|
+
* const oauth2Config = new cloudamqp.Oauth2Configuration("oauth2_config", {
|
|
137
|
+
* instanceId: Number(instance.id),
|
|
138
|
+
* issuer: "https://auth.example.com/realms/lavinmq",
|
|
139
|
+
* resourceServerId: "lavinmq",
|
|
140
|
+
* additionalScopesKeys: ["roles"],
|
|
141
|
+
* oauthClientId: "lavinmq-mgmt",
|
|
142
|
+
* mgmtScopes: "openid profile email",
|
|
143
|
+
* jwksCacheTtl: 3600,
|
|
144
|
+
* });
|
|
145
|
+
* ```
|
|
146
|
+
*
|
|
147
|
+
* </details>
|
|
148
|
+
*
|
|
149
|
+
* ## Broker support
|
|
150
|
+
*
|
|
151
|
+
* | Attribute | RabbitMQ | LavinMQ |
|
|
152
|
+
* |-----------------------------|----------|-----------------------------------|
|
|
153
|
+
* | `resourceServerId` | Yes | Yes |
|
|
154
|
+
* | `issuer` | Yes | Yes |
|
|
155
|
+
* | `preferredUsernameClaims` | Yes | Yes |
|
|
156
|
+
* | `additionalScopesKey` | Yes | Yes |
|
|
157
|
+
* | `scopePrefix` | Yes | Yes |
|
|
158
|
+
* | `verifyAud` | Yes | Yes |
|
|
159
|
+
* | `audience` | Yes | Yes |
|
|
160
|
+
* | `oauthClientId` | Yes | Yes, LavinMQ 2.9.0 or newer |
|
|
161
|
+
* | `scopeAliases` | Yes | No |
|
|
162
|
+
* | `oauthScopes` | Yes | No |
|
|
163
|
+
* | `disableBasicAuth` | Yes | No |
|
|
164
|
+
* | `jwksCacheTtl` | No | Yes |
|
|
165
|
+
* | `mgmtScopes` | No | Yes, LavinMQ 2.9.1 or newer |
|
|
166
|
+
*
|
|
167
|
+
* The CloudAMQP API requires LavinMQ 2.7.0 or newer for OAuth2 configuration.
|
|
168
|
+
*
|
|
96
169
|
* ## Dependency
|
|
97
170
|
*
|
|
98
171
|
* This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
|
|
@@ -105,6 +178,9 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
105
178
|
* * Only one OAuth2 configuration can exist per instance. Creating a new configuration will replace
|
|
106
179
|
* any existing configuration.
|
|
107
180
|
* * After a configuration has been applied, a restart of RabbitMQ is required for the changes to take effect.
|
|
181
|
+
* * For LavinMQ with `oauthClientId` set, the management UI base URL used for the SSO login callback
|
|
182
|
+
* defaults to the instance hostname. Overriding it (`mgmtBaseUrl` in the API) is not supported by
|
|
183
|
+
* this resource.
|
|
108
184
|
*/
|
|
109
185
|
export declare class Oauth2Configuration extends pulumi.CustomResource {
|
|
110
186
|
/**
|
|
@@ -135,6 +211,7 @@ export declare class Oauth2Configuration extends pulumi.CustomResource {
|
|
|
135
211
|
readonly audience: pulumi.Output<string | undefined>;
|
|
136
212
|
/**
|
|
137
213
|
* Disable static username/password management interface access.
|
|
214
|
+
* RabbitMQ only.
|
|
138
215
|
*/
|
|
139
216
|
readonly disableBasicAuth: pulumi.Output<boolean>;
|
|
140
217
|
/**
|
|
@@ -147,7 +224,20 @@ export declare class Oauth2Configuration extends pulumi.CustomResource {
|
|
|
147
224
|
*/
|
|
148
225
|
readonly issuer: pulumi.Output<string>;
|
|
149
226
|
/**
|
|
150
|
-
*
|
|
227
|
+
* How long JWKS signing keys are cached before being re-fetched
|
|
228
|
+
* from the identity provider, in seconds. Between 0 and 86400. LavinMQ only.
|
|
229
|
+
*/
|
|
230
|
+
readonly jwksCacheTtl: pulumi.Output<number | undefined>;
|
|
231
|
+
/**
|
|
232
|
+
* Space-separated OAuth2 scopes requested during management UI
|
|
233
|
+
* SSO login, used together with `oauthClientId`. Requires LavinMQ 2.9.1 or newer.
|
|
234
|
+
* LavinMQ only.
|
|
235
|
+
*/
|
|
236
|
+
readonly mgmtScopes: pulumi.Output<string | undefined>;
|
|
237
|
+
/**
|
|
238
|
+
* OAuth2 client ID used for token validation. For LavinMQ,
|
|
239
|
+
* this is the client ID for management UI SSO login, which requires
|
|
240
|
+
* LavinMQ 2.9.0 or newer.
|
|
151
241
|
*/
|
|
152
242
|
readonly oauthClientId: pulumi.Output<string | undefined>;
|
|
153
243
|
/**
|
|
@@ -189,7 +279,8 @@ export declare class Oauth2Configuration extends pulumi.CustomResource {
|
|
|
189
279
|
readonly timeout: pulumi.Output<number>;
|
|
190
280
|
/**
|
|
191
281
|
* Whether to verify the audience claim in the JWT
|
|
192
|
-
* token.
|
|
282
|
+
* token. When not set, RabbitMQ is configured with false and LavinMQ
|
|
283
|
+
* uses the API default, true.
|
|
193
284
|
*/
|
|
194
285
|
readonly verifyAud: pulumi.Output<boolean>;
|
|
195
286
|
/**
|
|
@@ -218,6 +309,7 @@ export interface Oauth2ConfigurationState {
|
|
|
218
309
|
audience?: pulumi.Input<string | undefined>;
|
|
219
310
|
/**
|
|
220
311
|
* Disable static username/password management interface access.
|
|
312
|
+
* RabbitMQ only.
|
|
221
313
|
*/
|
|
222
314
|
disableBasicAuth?: pulumi.Input<boolean | undefined>;
|
|
223
315
|
/**
|
|
@@ -230,7 +322,20 @@ export interface Oauth2ConfigurationState {
|
|
|
230
322
|
*/
|
|
231
323
|
issuer?: pulumi.Input<string | undefined>;
|
|
232
324
|
/**
|
|
233
|
-
*
|
|
325
|
+
* How long JWKS signing keys are cached before being re-fetched
|
|
326
|
+
* from the identity provider, in seconds. Between 0 and 86400. LavinMQ only.
|
|
327
|
+
*/
|
|
328
|
+
jwksCacheTtl?: pulumi.Input<number | undefined>;
|
|
329
|
+
/**
|
|
330
|
+
* Space-separated OAuth2 scopes requested during management UI
|
|
331
|
+
* SSO login, used together with `oauthClientId`. Requires LavinMQ 2.9.1 or newer.
|
|
332
|
+
* LavinMQ only.
|
|
333
|
+
*/
|
|
334
|
+
mgmtScopes?: pulumi.Input<string | undefined>;
|
|
335
|
+
/**
|
|
336
|
+
* OAuth2 client ID used for token validation. For LavinMQ,
|
|
337
|
+
* this is the client ID for management UI SSO login, which requires
|
|
338
|
+
* LavinMQ 2.9.0 or newer.
|
|
234
339
|
*/
|
|
235
340
|
oauthClientId?: pulumi.Input<string | undefined>;
|
|
236
341
|
/**
|
|
@@ -272,7 +377,8 @@ export interface Oauth2ConfigurationState {
|
|
|
272
377
|
timeout?: pulumi.Input<number | undefined>;
|
|
273
378
|
/**
|
|
274
379
|
* Whether to verify the audience claim in the JWT
|
|
275
|
-
* token.
|
|
380
|
+
* token. When not set, RabbitMQ is configured with false and LavinMQ
|
|
381
|
+
* uses the API default, true.
|
|
276
382
|
*/
|
|
277
383
|
verifyAud?: pulumi.Input<boolean | undefined>;
|
|
278
384
|
}
|
|
@@ -293,6 +399,7 @@ export interface Oauth2ConfigurationArgs {
|
|
|
293
399
|
audience?: pulumi.Input<string | undefined>;
|
|
294
400
|
/**
|
|
295
401
|
* Disable static username/password management interface access.
|
|
402
|
+
* RabbitMQ only.
|
|
296
403
|
*/
|
|
297
404
|
disableBasicAuth?: pulumi.Input<boolean | undefined>;
|
|
298
405
|
/**
|
|
@@ -305,7 +412,20 @@ export interface Oauth2ConfigurationArgs {
|
|
|
305
412
|
*/
|
|
306
413
|
issuer: pulumi.Input<string>;
|
|
307
414
|
/**
|
|
308
|
-
*
|
|
415
|
+
* How long JWKS signing keys are cached before being re-fetched
|
|
416
|
+
* from the identity provider, in seconds. Between 0 and 86400. LavinMQ only.
|
|
417
|
+
*/
|
|
418
|
+
jwksCacheTtl?: pulumi.Input<number | undefined>;
|
|
419
|
+
/**
|
|
420
|
+
* Space-separated OAuth2 scopes requested during management UI
|
|
421
|
+
* SSO login, used together with `oauthClientId`. Requires LavinMQ 2.9.1 or newer.
|
|
422
|
+
* LavinMQ only.
|
|
423
|
+
*/
|
|
424
|
+
mgmtScopes?: pulumi.Input<string | undefined>;
|
|
425
|
+
/**
|
|
426
|
+
* OAuth2 client ID used for token validation. For LavinMQ,
|
|
427
|
+
* this is the client ID for management UI SSO login, which requires
|
|
428
|
+
* LavinMQ 2.9.0 or newer.
|
|
309
429
|
*/
|
|
310
430
|
oauthClientId?: pulumi.Input<string | undefined>;
|
|
311
431
|
/**
|
|
@@ -347,7 +467,8 @@ export interface Oauth2ConfigurationArgs {
|
|
|
347
467
|
timeout?: pulumi.Input<number | undefined>;
|
|
348
468
|
/**
|
|
349
469
|
* Whether to verify the audience claim in the JWT
|
|
350
|
-
* token.
|
|
470
|
+
* token. When not set, RabbitMQ is configured with false and LavinMQ
|
|
471
|
+
* uses the API default, true.
|
|
351
472
|
*/
|
|
352
473
|
verifyAud?: pulumi.Input<boolean | undefined>;
|
|
353
474
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth2Configuration.d.ts","sourceRoot":"","sources":["../oauth2Configuration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC
|
|
1
|
+
{"version":3,"file":"oauth2Configuration.d.ts","sourceRoot":"","sources":["../oauth2Configuration.ts"],"names":[],"mappings":"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"}
|
package/oauth2Configuration.js
CHANGED
|
@@ -31,9 +31,14 @@ const utilities = __importStar(require("./utilities"));
|
|
|
31
31
|
/**
|
|
32
32
|
* <!-- markdownlint-disable MD033 -->
|
|
33
33
|
*
|
|
34
|
-
* This resource allows you to configure OAuth2 authentication for your RabbitMQ instance.
|
|
34
|
+
* This resource allows you to configure OAuth2 authentication for your RabbitMQ or LavinMQ instance.
|
|
35
35
|
*
|
|
36
|
-
* Only available for dedicated subscription plans running ***RabbitMQ***.
|
|
36
|
+
* Only available for dedicated subscription plans running ***RabbitMQ*** or ***LavinMQ***. LavinMQ
|
|
37
|
+
* requires version 2.7.0 or newer.
|
|
38
|
+
*
|
|
39
|
+
* The resource looks up which broker the instance runs when creating or updating the configuration.
|
|
40
|
+
* Some attributes are only supported by one of the brokers, see Broker support.
|
|
41
|
+
* Setting an attribute the broker doesn't support fails the apply with an error.
|
|
37
42
|
*
|
|
38
43
|
* ## Example Usage
|
|
39
44
|
*
|
|
@@ -122,6 +127,74 @@ const utilities = __importStar(require("./utilities"));
|
|
|
122
127
|
*
|
|
123
128
|
* </details>
|
|
124
129
|
*
|
|
130
|
+
* <details>
|
|
131
|
+
* <summary>
|
|
132
|
+
* <b>
|
|
133
|
+
* <i>LavinMQ OAuth2 configuration</i>
|
|
134
|
+
* </b>
|
|
135
|
+
* </summary>
|
|
136
|
+
*
|
|
137
|
+
* ```typescript
|
|
138
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
139
|
+
* import * as cloudamqp from "@pulumi/cloudamqp";
|
|
140
|
+
*
|
|
141
|
+
* const oauth2Config = new cloudamqp.Oauth2Configuration("oauth2_config", {
|
|
142
|
+
* instanceId: Number(instance.id),
|
|
143
|
+
* issuer: "https://auth.example.com/realms/lavinmq",
|
|
144
|
+
* resourceServerId: "lavinmq",
|
|
145
|
+
* verifyAud: true,
|
|
146
|
+
* preferredUsernameClaims: ["preferred_username"],
|
|
147
|
+
* });
|
|
148
|
+
* ```
|
|
149
|
+
*
|
|
150
|
+
* </details>
|
|
151
|
+
*
|
|
152
|
+
* <details>
|
|
153
|
+
* <summary>
|
|
154
|
+
* <b>
|
|
155
|
+
* <i>LavinMQ OAuth2 configuration with management UI SSO login</i>
|
|
156
|
+
* </b>
|
|
157
|
+
* </summary>
|
|
158
|
+
*
|
|
159
|
+
* Requires LavinMQ 2.9.0 or newer, and 2.9.1 or newer for `mgmtScopes`.
|
|
160
|
+
*
|
|
161
|
+
* ```typescript
|
|
162
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
163
|
+
* import * as cloudamqp from "@pulumi/cloudamqp";
|
|
164
|
+
*
|
|
165
|
+
* const oauth2Config = new cloudamqp.Oauth2Configuration("oauth2_config", {
|
|
166
|
+
* instanceId: Number(instance.id),
|
|
167
|
+
* issuer: "https://auth.example.com/realms/lavinmq",
|
|
168
|
+
* resourceServerId: "lavinmq",
|
|
169
|
+
* additionalScopesKeys: ["roles"],
|
|
170
|
+
* oauthClientId: "lavinmq-mgmt",
|
|
171
|
+
* mgmtScopes: "openid profile email",
|
|
172
|
+
* jwksCacheTtl: 3600,
|
|
173
|
+
* });
|
|
174
|
+
* ```
|
|
175
|
+
*
|
|
176
|
+
* </details>
|
|
177
|
+
*
|
|
178
|
+
* ## Broker support
|
|
179
|
+
*
|
|
180
|
+
* | Attribute | RabbitMQ | LavinMQ |
|
|
181
|
+
* |-----------------------------|----------|-----------------------------------|
|
|
182
|
+
* | `resourceServerId` | Yes | Yes |
|
|
183
|
+
* | `issuer` | Yes | Yes |
|
|
184
|
+
* | `preferredUsernameClaims` | Yes | Yes |
|
|
185
|
+
* | `additionalScopesKey` | Yes | Yes |
|
|
186
|
+
* | `scopePrefix` | Yes | Yes |
|
|
187
|
+
* | `verifyAud` | Yes | Yes |
|
|
188
|
+
* | `audience` | Yes | Yes |
|
|
189
|
+
* | `oauthClientId` | Yes | Yes, LavinMQ 2.9.0 or newer |
|
|
190
|
+
* | `scopeAliases` | Yes | No |
|
|
191
|
+
* | `oauthScopes` | Yes | No |
|
|
192
|
+
* | `disableBasicAuth` | Yes | No |
|
|
193
|
+
* | `jwksCacheTtl` | No | Yes |
|
|
194
|
+
* | `mgmtScopes` | No | Yes, LavinMQ 2.9.1 or newer |
|
|
195
|
+
*
|
|
196
|
+
* The CloudAMQP API requires LavinMQ 2.7.0 or newer for OAuth2 configuration.
|
|
197
|
+
*
|
|
125
198
|
* ## Dependency
|
|
126
199
|
*
|
|
127
200
|
* This resource depends on CloudAMQP instance identifier, `cloudamqp_instance.instance.id`.
|
|
@@ -134,6 +207,9 @@ const utilities = __importStar(require("./utilities"));
|
|
|
134
207
|
* * Only one OAuth2 configuration can exist per instance. Creating a new configuration will replace
|
|
135
208
|
* any existing configuration.
|
|
136
209
|
* * After a configuration has been applied, a restart of RabbitMQ is required for the changes to take effect.
|
|
210
|
+
* * For LavinMQ with `oauthClientId` set, the management UI base URL used for the SSO login callback
|
|
211
|
+
* defaults to the instance hostname. Overriding it (`mgmtBaseUrl` in the API) is not supported by
|
|
212
|
+
* this resource.
|
|
137
213
|
*/
|
|
138
214
|
class Oauth2Configuration extends pulumi.CustomResource {
|
|
139
215
|
/**
|
|
@@ -170,6 +246,8 @@ class Oauth2Configuration extends pulumi.CustomResource {
|
|
|
170
246
|
resourceInputs["disableBasicAuth"] = state?.disableBasicAuth;
|
|
171
247
|
resourceInputs["instanceId"] = state?.instanceId;
|
|
172
248
|
resourceInputs["issuer"] = state?.issuer;
|
|
249
|
+
resourceInputs["jwksCacheTtl"] = state?.jwksCacheTtl;
|
|
250
|
+
resourceInputs["mgmtScopes"] = state?.mgmtScopes;
|
|
173
251
|
resourceInputs["oauthClientId"] = state?.oauthClientId;
|
|
174
252
|
resourceInputs["oauthScopes"] = state?.oauthScopes;
|
|
175
253
|
resourceInputs["preferredUsernameClaims"] = state?.preferredUsernameClaims;
|
|
@@ -196,6 +274,8 @@ class Oauth2Configuration extends pulumi.CustomResource {
|
|
|
196
274
|
resourceInputs["disableBasicAuth"] = args?.disableBasicAuth;
|
|
197
275
|
resourceInputs["instanceId"] = args?.instanceId;
|
|
198
276
|
resourceInputs["issuer"] = args?.issuer;
|
|
277
|
+
resourceInputs["jwksCacheTtl"] = args?.jwksCacheTtl;
|
|
278
|
+
resourceInputs["mgmtScopes"] = args?.mgmtScopes;
|
|
199
279
|
resourceInputs["oauthClientId"] = args?.oauthClientId;
|
|
200
280
|
resourceInputs["oauthScopes"] = args?.oauthScopes;
|
|
201
281
|
resourceInputs["preferredUsernameClaims"] = args?.preferredUsernameClaims;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth2Configuration.js","sourceRoot":"","sources":["../oauth2Configuration.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AACzC,uDAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"oauth2Configuration.js","sourceRoot":"","sources":["../oauth2Configuration.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pulumi/cloudamqp",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.36.0",
|
|
4
4
|
"description": "A Pulumi package for creating and managing CloudAMQP resources.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pulumi",
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
"pulumi": {
|
|
24
24
|
"resource": true,
|
|
25
25
|
"name": "cloudamqp",
|
|
26
|
-
"version": "3.
|
|
26
|
+
"version": "3.36.0"
|
|
27
27
|
}
|
|
28
28
|
}
|