github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/macie2/classificationExportConfiguration.go (about) 1 // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package macie2 5 6 import ( 7 "context" 8 "reflect" 9 10 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 11 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 12 ) 13 14 // Provides a resource to manage an [Amazon Macie Classification Export Configuration](https://docs.aws.amazon.com/macie/latest/APIReference/classification-export-configuration.html). 15 // 16 // ## Example Usage 17 // 18 // <!--Start PulumiCodeChooser --> 19 // ```go 20 // package main 21 // 22 // import ( 23 // 24 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/macie2" 25 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 26 // 27 // ) 28 // 29 // func main() { 30 // pulumi.Run(func(ctx *pulumi.Context) error { 31 // example, err := macie2.NewAccount(ctx, "example", nil) 32 // if err != nil { 33 // return err 34 // } 35 // _, err = macie2.NewClassificationExportConfiguration(ctx, "example", &macie2.ClassificationExportConfigurationArgs{ 36 // S3Destination: &macie2.ClassificationExportConfigurationS3DestinationArgs{ 37 // BucketName: pulumi.Any(exampleAwsS3Bucket.Bucket), 38 // KeyPrefix: pulumi.String("exampleprefix/"), 39 // KmsKeyArn: pulumi.Any(exampleAwsKmsKey.Arn), 40 // }, 41 // }, pulumi.DependsOn([]pulumi.Resource{ 42 // example, 43 // })) 44 // if err != nil { 45 // return err 46 // } 47 // return nil 48 // }) 49 // } 50 // 51 // ``` 52 // <!--End PulumiCodeChooser --> 53 // 54 // ## Import 55 // 56 // Using `pulumi import`, import `aws_macie2_classification_export_configuration` using the account ID and region. For example: 57 // 58 // ```sh 59 // $ pulumi import aws:macie2/classificationExportConfiguration:ClassificationExportConfiguration example 123456789012:us-west-2 60 // ``` 61 type ClassificationExportConfiguration struct { 62 pulumi.CustomResourceState 63 64 // Configuration block for a S3 Destination. Defined below 65 S3Destination ClassificationExportConfigurationS3DestinationPtrOutput `pulumi:"s3Destination"` 66 } 67 68 // NewClassificationExportConfiguration registers a new resource with the given unique name, arguments, and options. 69 func NewClassificationExportConfiguration(ctx *pulumi.Context, 70 name string, args *ClassificationExportConfigurationArgs, opts ...pulumi.ResourceOption) (*ClassificationExportConfiguration, error) { 71 if args == nil { 72 args = &ClassificationExportConfigurationArgs{} 73 } 74 75 opts = internal.PkgResourceDefaultOpts(opts) 76 var resource ClassificationExportConfiguration 77 err := ctx.RegisterResource("aws:macie2/classificationExportConfiguration:ClassificationExportConfiguration", name, args, &resource, opts...) 78 if err != nil { 79 return nil, err 80 } 81 return &resource, nil 82 } 83 84 // GetClassificationExportConfiguration gets an existing ClassificationExportConfiguration resource's state with the given name, ID, and optional 85 // state properties that are used to uniquely qualify the lookup (nil if not required). 86 func GetClassificationExportConfiguration(ctx *pulumi.Context, 87 name string, id pulumi.IDInput, state *ClassificationExportConfigurationState, opts ...pulumi.ResourceOption) (*ClassificationExportConfiguration, error) { 88 var resource ClassificationExportConfiguration 89 err := ctx.ReadResource("aws:macie2/classificationExportConfiguration:ClassificationExportConfiguration", name, id, state, &resource, opts...) 90 if err != nil { 91 return nil, err 92 } 93 return &resource, nil 94 } 95 96 // Input properties used for looking up and filtering ClassificationExportConfiguration resources. 97 type classificationExportConfigurationState struct { 98 // Configuration block for a S3 Destination. Defined below 99 S3Destination *ClassificationExportConfigurationS3Destination `pulumi:"s3Destination"` 100 } 101 102 type ClassificationExportConfigurationState struct { 103 // Configuration block for a S3 Destination. Defined below 104 S3Destination ClassificationExportConfigurationS3DestinationPtrInput 105 } 106 107 func (ClassificationExportConfigurationState) ElementType() reflect.Type { 108 return reflect.TypeOf((*classificationExportConfigurationState)(nil)).Elem() 109 } 110 111 type classificationExportConfigurationArgs struct { 112 // Configuration block for a S3 Destination. Defined below 113 S3Destination *ClassificationExportConfigurationS3Destination `pulumi:"s3Destination"` 114 } 115 116 // The set of arguments for constructing a ClassificationExportConfiguration resource. 117 type ClassificationExportConfigurationArgs struct { 118 // Configuration block for a S3 Destination. Defined below 119 S3Destination ClassificationExportConfigurationS3DestinationPtrInput 120 } 121 122 func (ClassificationExportConfigurationArgs) ElementType() reflect.Type { 123 return reflect.TypeOf((*classificationExportConfigurationArgs)(nil)).Elem() 124 } 125 126 type ClassificationExportConfigurationInput interface { 127 pulumi.Input 128 129 ToClassificationExportConfigurationOutput() ClassificationExportConfigurationOutput 130 ToClassificationExportConfigurationOutputWithContext(ctx context.Context) ClassificationExportConfigurationOutput 131 } 132 133 func (*ClassificationExportConfiguration) ElementType() reflect.Type { 134 return reflect.TypeOf((**ClassificationExportConfiguration)(nil)).Elem() 135 } 136 137 func (i *ClassificationExportConfiguration) ToClassificationExportConfigurationOutput() ClassificationExportConfigurationOutput { 138 return i.ToClassificationExportConfigurationOutputWithContext(context.Background()) 139 } 140 141 func (i *ClassificationExportConfiguration) ToClassificationExportConfigurationOutputWithContext(ctx context.Context) ClassificationExportConfigurationOutput { 142 return pulumi.ToOutputWithContext(ctx, i).(ClassificationExportConfigurationOutput) 143 } 144 145 // ClassificationExportConfigurationArrayInput is an input type that accepts ClassificationExportConfigurationArray and ClassificationExportConfigurationArrayOutput values. 146 // You can construct a concrete instance of `ClassificationExportConfigurationArrayInput` via: 147 // 148 // ClassificationExportConfigurationArray{ ClassificationExportConfigurationArgs{...} } 149 type ClassificationExportConfigurationArrayInput interface { 150 pulumi.Input 151 152 ToClassificationExportConfigurationArrayOutput() ClassificationExportConfigurationArrayOutput 153 ToClassificationExportConfigurationArrayOutputWithContext(context.Context) ClassificationExportConfigurationArrayOutput 154 } 155 156 type ClassificationExportConfigurationArray []ClassificationExportConfigurationInput 157 158 func (ClassificationExportConfigurationArray) ElementType() reflect.Type { 159 return reflect.TypeOf((*[]*ClassificationExportConfiguration)(nil)).Elem() 160 } 161 162 func (i ClassificationExportConfigurationArray) ToClassificationExportConfigurationArrayOutput() ClassificationExportConfigurationArrayOutput { 163 return i.ToClassificationExportConfigurationArrayOutputWithContext(context.Background()) 164 } 165 166 func (i ClassificationExportConfigurationArray) ToClassificationExportConfigurationArrayOutputWithContext(ctx context.Context) ClassificationExportConfigurationArrayOutput { 167 return pulumi.ToOutputWithContext(ctx, i).(ClassificationExportConfigurationArrayOutput) 168 } 169 170 // ClassificationExportConfigurationMapInput is an input type that accepts ClassificationExportConfigurationMap and ClassificationExportConfigurationMapOutput values. 171 // You can construct a concrete instance of `ClassificationExportConfigurationMapInput` via: 172 // 173 // ClassificationExportConfigurationMap{ "key": ClassificationExportConfigurationArgs{...} } 174 type ClassificationExportConfigurationMapInput interface { 175 pulumi.Input 176 177 ToClassificationExportConfigurationMapOutput() ClassificationExportConfigurationMapOutput 178 ToClassificationExportConfigurationMapOutputWithContext(context.Context) ClassificationExportConfigurationMapOutput 179 } 180 181 type ClassificationExportConfigurationMap map[string]ClassificationExportConfigurationInput 182 183 func (ClassificationExportConfigurationMap) ElementType() reflect.Type { 184 return reflect.TypeOf((*map[string]*ClassificationExportConfiguration)(nil)).Elem() 185 } 186 187 func (i ClassificationExportConfigurationMap) ToClassificationExportConfigurationMapOutput() ClassificationExportConfigurationMapOutput { 188 return i.ToClassificationExportConfigurationMapOutputWithContext(context.Background()) 189 } 190 191 func (i ClassificationExportConfigurationMap) ToClassificationExportConfigurationMapOutputWithContext(ctx context.Context) ClassificationExportConfigurationMapOutput { 192 return pulumi.ToOutputWithContext(ctx, i).(ClassificationExportConfigurationMapOutput) 193 } 194 195 type ClassificationExportConfigurationOutput struct{ *pulumi.OutputState } 196 197 func (ClassificationExportConfigurationOutput) ElementType() reflect.Type { 198 return reflect.TypeOf((**ClassificationExportConfiguration)(nil)).Elem() 199 } 200 201 func (o ClassificationExportConfigurationOutput) ToClassificationExportConfigurationOutput() ClassificationExportConfigurationOutput { 202 return o 203 } 204 205 func (o ClassificationExportConfigurationOutput) ToClassificationExportConfigurationOutputWithContext(ctx context.Context) ClassificationExportConfigurationOutput { 206 return o 207 } 208 209 // Configuration block for a S3 Destination. Defined below 210 func (o ClassificationExportConfigurationOutput) S3Destination() ClassificationExportConfigurationS3DestinationPtrOutput { 211 return o.ApplyT(func(v *ClassificationExportConfiguration) ClassificationExportConfigurationS3DestinationPtrOutput { 212 return v.S3Destination 213 }).(ClassificationExportConfigurationS3DestinationPtrOutput) 214 } 215 216 type ClassificationExportConfigurationArrayOutput struct{ *pulumi.OutputState } 217 218 func (ClassificationExportConfigurationArrayOutput) ElementType() reflect.Type { 219 return reflect.TypeOf((*[]*ClassificationExportConfiguration)(nil)).Elem() 220 } 221 222 func (o ClassificationExportConfigurationArrayOutput) ToClassificationExportConfigurationArrayOutput() ClassificationExportConfigurationArrayOutput { 223 return o 224 } 225 226 func (o ClassificationExportConfigurationArrayOutput) ToClassificationExportConfigurationArrayOutputWithContext(ctx context.Context) ClassificationExportConfigurationArrayOutput { 227 return o 228 } 229 230 func (o ClassificationExportConfigurationArrayOutput) Index(i pulumi.IntInput) ClassificationExportConfigurationOutput { 231 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ClassificationExportConfiguration { 232 return vs[0].([]*ClassificationExportConfiguration)[vs[1].(int)] 233 }).(ClassificationExportConfigurationOutput) 234 } 235 236 type ClassificationExportConfigurationMapOutput struct{ *pulumi.OutputState } 237 238 func (ClassificationExportConfigurationMapOutput) ElementType() reflect.Type { 239 return reflect.TypeOf((*map[string]*ClassificationExportConfiguration)(nil)).Elem() 240 } 241 242 func (o ClassificationExportConfigurationMapOutput) ToClassificationExportConfigurationMapOutput() ClassificationExportConfigurationMapOutput { 243 return o 244 } 245 246 func (o ClassificationExportConfigurationMapOutput) ToClassificationExportConfigurationMapOutputWithContext(ctx context.Context) ClassificationExportConfigurationMapOutput { 247 return o 248 } 249 250 func (o ClassificationExportConfigurationMapOutput) MapIndex(k pulumi.StringInput) ClassificationExportConfigurationOutput { 251 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ClassificationExportConfiguration { 252 return vs[0].(map[string]*ClassificationExportConfiguration)[vs[1].(string)] 253 }).(ClassificationExportConfigurationOutput) 254 } 255 256 func init() { 257 pulumi.RegisterInputType(reflect.TypeOf((*ClassificationExportConfigurationInput)(nil)).Elem(), &ClassificationExportConfiguration{}) 258 pulumi.RegisterInputType(reflect.TypeOf((*ClassificationExportConfigurationArrayInput)(nil)).Elem(), ClassificationExportConfigurationArray{}) 259 pulumi.RegisterInputType(reflect.TypeOf((*ClassificationExportConfigurationMapInput)(nil)).Elem(), ClassificationExportConfigurationMap{}) 260 pulumi.RegisterOutputType(ClassificationExportConfigurationOutput{}) 261 pulumi.RegisterOutputType(ClassificationExportConfigurationArrayOutput{}) 262 pulumi.RegisterOutputType(ClassificationExportConfigurationMapOutput{}) 263 }