generated from pulumi/pulumi-tf-provider-boilerplate
/
auditPolicy.go
473 lines (408 loc) · 25.7 KB
/
auditPolicy.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
// Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
package datasafe
import (
"context"
"reflect"
"errors"
"github.com/pulumi/pulumi-oci/sdk/go/oci/internal"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// This resource provides the Audit Policy resource in Oracle Cloud Infrastructure Data Safe service.
//
// Updates the audit policy.
//
// ## Import
//
// AuditPolicies can be imported using the `id`, e.g.
//
// ```sh
// $ pulumi import oci:DataSafe/auditPolicy:AuditPolicy test_audit_policy "id"
// ```
type AuditPolicy struct {
pulumi.CustomResourceState
// Lists the audit policy provisioning conditions for the target database.
AuditConditions AuditPolicyAuditConditionArrayOutput `pulumi:"auditConditions"`
// Unique audit policy identifier.
AuditPolicyId pulumi.StringOutput `pulumi:"auditPolicyId"`
// Represents all available audit policy specifications relevant for the target database. For more details on available audit polcies, refer to [documentation](https://docs.oracle.com/en/cloud/paas/data-safe/udscs/audit-policies.html#GUID-361A9A9A-7C21-4F5A-8945-9B3A0C472827).
AuditSpecifications AuditPolicyAuditSpecificationArrayOutput `pulumi:"auditSpecifications"`
// (Updatable) The OCID of the compartment containing the audit policy.
CompartmentId pulumi.StringOutput `pulumi:"compartmentId"`
// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Operations.CostCenter": "42"}`
DefinedTags pulumi.MapOutput `pulumi:"definedTags"`
// (Updatable) The description of the audit policy.
Description pulumi.StringOutput `pulumi:"description"`
// (Updatable) The display name of the audit policy. The name does not have to be unique, and it is changeable.
DisplayName pulumi.StringOutput `pulumi:"displayName"`
// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Department": "Finance"}`
FreeformTags pulumi.MapOutput `pulumi:"freeformTags"`
// Option provided to users at the target to indicate whether the Data Safe service account has to be excluded while provisioning the audit policies.
IsDataSafeServiceAccountExcluded pulumi.BoolOutput `pulumi:"isDataSafeServiceAccountExcluded"`
// Details about the current state of the audit policy in Data Safe.
LifecycleDetails pulumi.StringOutput `pulumi:"lifecycleDetails"`
// (Updatable) An optional property when incremented triggers Provision. Could be set to any integer value.
ProvisionTrigger pulumi.IntPtrOutput `pulumi:"provisionTrigger"`
// (Updatable) An optional property when incremented triggers Retrieve From Target. Could be set to any integer value.
//
// ** IMPORTANT **
// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
RetrieveFromTargetTrigger pulumi.IntPtrOutput `pulumi:"retrieveFromTargetTrigger"`
// The current state of the audit policy.
State pulumi.StringOutput `pulumi:"state"`
// System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: `{"orcl-cloud.free-tier-retained": "true"}`
SystemTags pulumi.MapOutput `pulumi:"systemTags"`
// The OCID of the target for which the audit policy is created.
TargetId pulumi.StringOutput `pulumi:"targetId"`
// The time the the audit policy was created, in the format defined by RFC3339.
TimeCreated pulumi.StringOutput `pulumi:"timeCreated"`
// Indicates the last provisioning time of audit policies on the target, in the format defined by RFC3339.
TimeLastProvisioned pulumi.StringOutput `pulumi:"timeLastProvisioned"`
// The time when the audit policies was last retrieved from this target, in the format defined by RFC3339.
TimeLastRetrieved pulumi.StringOutput `pulumi:"timeLastRetrieved"`
// The last date and time the audit policy was updated, in the format defined by RFC3339.
TimeUpdated pulumi.StringOutput `pulumi:"timeUpdated"`
}
// NewAuditPolicy registers a new resource with the given unique name, arguments, and options.
func NewAuditPolicy(ctx *pulumi.Context,
name string, args *AuditPolicyArgs, opts ...pulumi.ResourceOption) (*AuditPolicy, error) {
if args == nil {
return nil, errors.New("missing one or more required arguments")
}
if args.AuditPolicyId == nil {
return nil, errors.New("invalid value for required argument 'AuditPolicyId'")
}
opts = internal.PkgResourceDefaultOpts(opts)
var resource AuditPolicy
err := ctx.RegisterResource("oci:DataSafe/auditPolicy:AuditPolicy", name, args, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// GetAuditPolicy gets an existing AuditPolicy resource's state with the given name, ID, and optional
// state properties that are used to uniquely qualify the lookup (nil if not required).
func GetAuditPolicy(ctx *pulumi.Context,
name string, id pulumi.IDInput, state *AuditPolicyState, opts ...pulumi.ResourceOption) (*AuditPolicy, error) {
var resource AuditPolicy
err := ctx.ReadResource("oci:DataSafe/auditPolicy:AuditPolicy", name, id, state, &resource, opts...)
if err != nil {
return nil, err
}
return &resource, nil
}
// Input properties used for looking up and filtering AuditPolicy resources.
type auditPolicyState struct {
// Lists the audit policy provisioning conditions for the target database.
AuditConditions []AuditPolicyAuditCondition `pulumi:"auditConditions"`
// Unique audit policy identifier.
AuditPolicyId *string `pulumi:"auditPolicyId"`
// Represents all available audit policy specifications relevant for the target database. For more details on available audit polcies, refer to [documentation](https://docs.oracle.com/en/cloud/paas/data-safe/udscs/audit-policies.html#GUID-361A9A9A-7C21-4F5A-8945-9B3A0C472827).
AuditSpecifications []AuditPolicyAuditSpecification `pulumi:"auditSpecifications"`
// (Updatable) The OCID of the compartment containing the audit policy.
CompartmentId *string `pulumi:"compartmentId"`
// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Operations.CostCenter": "42"}`
DefinedTags map[string]interface{} `pulumi:"definedTags"`
// (Updatable) The description of the audit policy.
Description *string `pulumi:"description"`
// (Updatable) The display name of the audit policy. The name does not have to be unique, and it is changeable.
DisplayName *string `pulumi:"displayName"`
// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Department": "Finance"}`
FreeformTags map[string]interface{} `pulumi:"freeformTags"`
// Option provided to users at the target to indicate whether the Data Safe service account has to be excluded while provisioning the audit policies.
IsDataSafeServiceAccountExcluded *bool `pulumi:"isDataSafeServiceAccountExcluded"`
// Details about the current state of the audit policy in Data Safe.
LifecycleDetails *string `pulumi:"lifecycleDetails"`
// (Updatable) An optional property when incremented triggers Provision. Could be set to any integer value.
ProvisionTrigger *int `pulumi:"provisionTrigger"`
// (Updatable) An optional property when incremented triggers Retrieve From Target. Could be set to any integer value.
//
// ** IMPORTANT **
// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
RetrieveFromTargetTrigger *int `pulumi:"retrieveFromTargetTrigger"`
// The current state of the audit policy.
State *string `pulumi:"state"`
// System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: `{"orcl-cloud.free-tier-retained": "true"}`
SystemTags map[string]interface{} `pulumi:"systemTags"`
// The OCID of the target for which the audit policy is created.
TargetId *string `pulumi:"targetId"`
// The time the the audit policy was created, in the format defined by RFC3339.
TimeCreated *string `pulumi:"timeCreated"`
// Indicates the last provisioning time of audit policies on the target, in the format defined by RFC3339.
TimeLastProvisioned *string `pulumi:"timeLastProvisioned"`
// The time when the audit policies was last retrieved from this target, in the format defined by RFC3339.
TimeLastRetrieved *string `pulumi:"timeLastRetrieved"`
// The last date and time the audit policy was updated, in the format defined by RFC3339.
TimeUpdated *string `pulumi:"timeUpdated"`
}
type AuditPolicyState struct {
// Lists the audit policy provisioning conditions for the target database.
AuditConditions AuditPolicyAuditConditionArrayInput
// Unique audit policy identifier.
AuditPolicyId pulumi.StringPtrInput
// Represents all available audit policy specifications relevant for the target database. For more details on available audit polcies, refer to [documentation](https://docs.oracle.com/en/cloud/paas/data-safe/udscs/audit-policies.html#GUID-361A9A9A-7C21-4F5A-8945-9B3A0C472827).
AuditSpecifications AuditPolicyAuditSpecificationArrayInput
// (Updatable) The OCID of the compartment containing the audit policy.
CompartmentId pulumi.StringPtrInput
// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Operations.CostCenter": "42"}`
DefinedTags pulumi.MapInput
// (Updatable) The description of the audit policy.
Description pulumi.StringPtrInput
// (Updatable) The display name of the audit policy. The name does not have to be unique, and it is changeable.
DisplayName pulumi.StringPtrInput
// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Department": "Finance"}`
FreeformTags pulumi.MapInput
// Option provided to users at the target to indicate whether the Data Safe service account has to be excluded while provisioning the audit policies.
IsDataSafeServiceAccountExcluded pulumi.BoolPtrInput
// Details about the current state of the audit policy in Data Safe.
LifecycleDetails pulumi.StringPtrInput
// (Updatable) An optional property when incremented triggers Provision. Could be set to any integer value.
ProvisionTrigger pulumi.IntPtrInput
// (Updatable) An optional property when incremented triggers Retrieve From Target. Could be set to any integer value.
//
// ** IMPORTANT **
// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
RetrieveFromTargetTrigger pulumi.IntPtrInput
// The current state of the audit policy.
State pulumi.StringPtrInput
// System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: `{"orcl-cloud.free-tier-retained": "true"}`
SystemTags pulumi.MapInput
// The OCID of the target for which the audit policy is created.
TargetId pulumi.StringPtrInput
// The time the the audit policy was created, in the format defined by RFC3339.
TimeCreated pulumi.StringPtrInput
// Indicates the last provisioning time of audit policies on the target, in the format defined by RFC3339.
TimeLastProvisioned pulumi.StringPtrInput
// The time when the audit policies was last retrieved from this target, in the format defined by RFC3339.
TimeLastRetrieved pulumi.StringPtrInput
// The last date and time the audit policy was updated, in the format defined by RFC3339.
TimeUpdated pulumi.StringPtrInput
}
func (AuditPolicyState) ElementType() reflect.Type {
return reflect.TypeOf((*auditPolicyState)(nil)).Elem()
}
type auditPolicyArgs struct {
// Unique audit policy identifier.
AuditPolicyId string `pulumi:"auditPolicyId"`
// (Updatable) The OCID of the compartment containing the audit policy.
CompartmentId *string `pulumi:"compartmentId"`
// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Operations.CostCenter": "42"}`
DefinedTags map[string]interface{} `pulumi:"definedTags"`
// (Updatable) The description of the audit policy.
Description *string `pulumi:"description"`
// (Updatable) The display name of the audit policy. The name does not have to be unique, and it is changeable.
DisplayName *string `pulumi:"displayName"`
// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Department": "Finance"}`
FreeformTags map[string]interface{} `pulumi:"freeformTags"`
// (Updatable) An optional property when incremented triggers Provision. Could be set to any integer value.
ProvisionTrigger *int `pulumi:"provisionTrigger"`
// (Updatable) An optional property when incremented triggers Retrieve From Target. Could be set to any integer value.
//
// ** IMPORTANT **
// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
RetrieveFromTargetTrigger *int `pulumi:"retrieveFromTargetTrigger"`
}
// The set of arguments for constructing a AuditPolicy resource.
type AuditPolicyArgs struct {
// Unique audit policy identifier.
AuditPolicyId pulumi.StringInput
// (Updatable) The OCID of the compartment containing the audit policy.
CompartmentId pulumi.StringPtrInput
// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Operations.CostCenter": "42"}`
DefinedTags pulumi.MapInput
// (Updatable) The description of the audit policy.
Description pulumi.StringPtrInput
// (Updatable) The display name of the audit policy. The name does not have to be unique, and it is changeable.
DisplayName pulumi.StringPtrInput
// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Department": "Finance"}`
FreeformTags pulumi.MapInput
// (Updatable) An optional property when incremented triggers Provision. Could be set to any integer value.
ProvisionTrigger pulumi.IntPtrInput
// (Updatable) An optional property when incremented triggers Retrieve From Target. Could be set to any integer value.
//
// ** IMPORTANT **
// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
RetrieveFromTargetTrigger pulumi.IntPtrInput
}
func (AuditPolicyArgs) ElementType() reflect.Type {
return reflect.TypeOf((*auditPolicyArgs)(nil)).Elem()
}
type AuditPolicyInput interface {
pulumi.Input
ToAuditPolicyOutput() AuditPolicyOutput
ToAuditPolicyOutputWithContext(ctx context.Context) AuditPolicyOutput
}
func (*AuditPolicy) ElementType() reflect.Type {
return reflect.TypeOf((**AuditPolicy)(nil)).Elem()
}
func (i *AuditPolicy) ToAuditPolicyOutput() AuditPolicyOutput {
return i.ToAuditPolicyOutputWithContext(context.Background())
}
func (i *AuditPolicy) ToAuditPolicyOutputWithContext(ctx context.Context) AuditPolicyOutput {
return pulumi.ToOutputWithContext(ctx, i).(AuditPolicyOutput)
}
// AuditPolicyArrayInput is an input type that accepts AuditPolicyArray and AuditPolicyArrayOutput values.
// You can construct a concrete instance of `AuditPolicyArrayInput` via:
//
// AuditPolicyArray{ AuditPolicyArgs{...} }
type AuditPolicyArrayInput interface {
pulumi.Input
ToAuditPolicyArrayOutput() AuditPolicyArrayOutput
ToAuditPolicyArrayOutputWithContext(context.Context) AuditPolicyArrayOutput
}
type AuditPolicyArray []AuditPolicyInput
func (AuditPolicyArray) ElementType() reflect.Type {
return reflect.TypeOf((*[]*AuditPolicy)(nil)).Elem()
}
func (i AuditPolicyArray) ToAuditPolicyArrayOutput() AuditPolicyArrayOutput {
return i.ToAuditPolicyArrayOutputWithContext(context.Background())
}
func (i AuditPolicyArray) ToAuditPolicyArrayOutputWithContext(ctx context.Context) AuditPolicyArrayOutput {
return pulumi.ToOutputWithContext(ctx, i).(AuditPolicyArrayOutput)
}
// AuditPolicyMapInput is an input type that accepts AuditPolicyMap and AuditPolicyMapOutput values.
// You can construct a concrete instance of `AuditPolicyMapInput` via:
//
// AuditPolicyMap{ "key": AuditPolicyArgs{...} }
type AuditPolicyMapInput interface {
pulumi.Input
ToAuditPolicyMapOutput() AuditPolicyMapOutput
ToAuditPolicyMapOutputWithContext(context.Context) AuditPolicyMapOutput
}
type AuditPolicyMap map[string]AuditPolicyInput
func (AuditPolicyMap) ElementType() reflect.Type {
return reflect.TypeOf((*map[string]*AuditPolicy)(nil)).Elem()
}
func (i AuditPolicyMap) ToAuditPolicyMapOutput() AuditPolicyMapOutput {
return i.ToAuditPolicyMapOutputWithContext(context.Background())
}
func (i AuditPolicyMap) ToAuditPolicyMapOutputWithContext(ctx context.Context) AuditPolicyMapOutput {
return pulumi.ToOutputWithContext(ctx, i).(AuditPolicyMapOutput)
}
type AuditPolicyOutput struct{ *pulumi.OutputState }
func (AuditPolicyOutput) ElementType() reflect.Type {
return reflect.TypeOf((**AuditPolicy)(nil)).Elem()
}
func (o AuditPolicyOutput) ToAuditPolicyOutput() AuditPolicyOutput {
return o
}
func (o AuditPolicyOutput) ToAuditPolicyOutputWithContext(ctx context.Context) AuditPolicyOutput {
return o
}
// Lists the audit policy provisioning conditions for the target database.
func (o AuditPolicyOutput) AuditConditions() AuditPolicyAuditConditionArrayOutput {
return o.ApplyT(func(v *AuditPolicy) AuditPolicyAuditConditionArrayOutput { return v.AuditConditions }).(AuditPolicyAuditConditionArrayOutput)
}
// Unique audit policy identifier.
func (o AuditPolicyOutput) AuditPolicyId() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.AuditPolicyId }).(pulumi.StringOutput)
}
// Represents all available audit policy specifications relevant for the target database. For more details on available audit polcies, refer to [documentation](https://docs.oracle.com/en/cloud/paas/data-safe/udscs/audit-policies.html#GUID-361A9A9A-7C21-4F5A-8945-9B3A0C472827).
func (o AuditPolicyOutput) AuditSpecifications() AuditPolicyAuditSpecificationArrayOutput {
return o.ApplyT(func(v *AuditPolicy) AuditPolicyAuditSpecificationArrayOutput { return v.AuditSpecifications }).(AuditPolicyAuditSpecificationArrayOutput)
}
// (Updatable) The OCID of the compartment containing the audit policy.
func (o AuditPolicyOutput) CompartmentId() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.CompartmentId }).(pulumi.StringOutput)
}
// (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Operations.CostCenter": "42"}`
func (o AuditPolicyOutput) DefinedTags() pulumi.MapOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.MapOutput { return v.DefinedTags }).(pulumi.MapOutput)
}
// (Updatable) The description of the audit policy.
func (o AuditPolicyOutput) Description() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput)
}
// (Updatable) The display name of the audit policy. The name does not have to be unique, and it is changeable.
func (o AuditPolicyOutput) DisplayName() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.DisplayName }).(pulumi.StringOutput)
}
// (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm) Example: `{"Department": "Finance"}`
func (o AuditPolicyOutput) FreeformTags() pulumi.MapOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.MapOutput { return v.FreeformTags }).(pulumi.MapOutput)
}
// Option provided to users at the target to indicate whether the Data Safe service account has to be excluded while provisioning the audit policies.
func (o AuditPolicyOutput) IsDataSafeServiceAccountExcluded() pulumi.BoolOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.BoolOutput { return v.IsDataSafeServiceAccountExcluded }).(pulumi.BoolOutput)
}
// Details about the current state of the audit policy in Data Safe.
func (o AuditPolicyOutput) LifecycleDetails() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.LifecycleDetails }).(pulumi.StringOutput)
}
// (Updatable) An optional property when incremented triggers Provision. Could be set to any integer value.
func (o AuditPolicyOutput) ProvisionTrigger() pulumi.IntPtrOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.IntPtrOutput { return v.ProvisionTrigger }).(pulumi.IntPtrOutput)
}
// (Updatable) An optional property when incremented triggers Retrieve From Target. Could be set to any integer value.
//
// ** IMPORTANT **
// Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
func (o AuditPolicyOutput) RetrieveFromTargetTrigger() pulumi.IntPtrOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.IntPtrOutput { return v.RetrieveFromTargetTrigger }).(pulumi.IntPtrOutput)
}
// The current state of the audit policy.
func (o AuditPolicyOutput) State() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.State }).(pulumi.StringOutput)
}
// System tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: `{"orcl-cloud.free-tier-retained": "true"}`
func (o AuditPolicyOutput) SystemTags() pulumi.MapOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.MapOutput { return v.SystemTags }).(pulumi.MapOutput)
}
// The OCID of the target for which the audit policy is created.
func (o AuditPolicyOutput) TargetId() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.TargetId }).(pulumi.StringOutput)
}
// The time the the audit policy was created, in the format defined by RFC3339.
func (o AuditPolicyOutput) TimeCreated() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.TimeCreated }).(pulumi.StringOutput)
}
// Indicates the last provisioning time of audit policies on the target, in the format defined by RFC3339.
func (o AuditPolicyOutput) TimeLastProvisioned() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.TimeLastProvisioned }).(pulumi.StringOutput)
}
// The time when the audit policies was last retrieved from this target, in the format defined by RFC3339.
func (o AuditPolicyOutput) TimeLastRetrieved() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.TimeLastRetrieved }).(pulumi.StringOutput)
}
// The last date and time the audit policy was updated, in the format defined by RFC3339.
func (o AuditPolicyOutput) TimeUpdated() pulumi.StringOutput {
return o.ApplyT(func(v *AuditPolicy) pulumi.StringOutput { return v.TimeUpdated }).(pulumi.StringOutput)
}
type AuditPolicyArrayOutput struct{ *pulumi.OutputState }
func (AuditPolicyArrayOutput) ElementType() reflect.Type {
return reflect.TypeOf((*[]*AuditPolicy)(nil)).Elem()
}
func (o AuditPolicyArrayOutput) ToAuditPolicyArrayOutput() AuditPolicyArrayOutput {
return o
}
func (o AuditPolicyArrayOutput) ToAuditPolicyArrayOutputWithContext(ctx context.Context) AuditPolicyArrayOutput {
return o
}
func (o AuditPolicyArrayOutput) Index(i pulumi.IntInput) AuditPolicyOutput {
return pulumi.All(o, i).ApplyT(func(vs []interface{}) *AuditPolicy {
return vs[0].([]*AuditPolicy)[vs[1].(int)]
}).(AuditPolicyOutput)
}
type AuditPolicyMapOutput struct{ *pulumi.OutputState }
func (AuditPolicyMapOutput) ElementType() reflect.Type {
return reflect.TypeOf((*map[string]*AuditPolicy)(nil)).Elem()
}
func (o AuditPolicyMapOutput) ToAuditPolicyMapOutput() AuditPolicyMapOutput {
return o
}
func (o AuditPolicyMapOutput) ToAuditPolicyMapOutputWithContext(ctx context.Context) AuditPolicyMapOutput {
return o
}
func (o AuditPolicyMapOutput) MapIndex(k pulumi.StringInput) AuditPolicyOutput {
return pulumi.All(o, k).ApplyT(func(vs []interface{}) *AuditPolicy {
return vs[0].(map[string]*AuditPolicy)[vs[1].(string)]
}).(AuditPolicyOutput)
}
func init() {
pulumi.RegisterInputType(reflect.TypeOf((*AuditPolicyInput)(nil)).Elem(), &AuditPolicy{})
pulumi.RegisterInputType(reflect.TypeOf((*AuditPolicyArrayInput)(nil)).Elem(), AuditPolicyArray{})
pulumi.RegisterInputType(reflect.TypeOf((*AuditPolicyMapInput)(nil)).Elem(), AuditPolicyMap{})
pulumi.RegisterOutputType(AuditPolicyOutput{})
pulumi.RegisterOutputType(AuditPolicyArrayOutput{})
pulumi.RegisterOutputType(AuditPolicyMapOutput{})
}