github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/auditmanager/accountRegistration.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 auditmanager 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 // Resource for managing AWS Audit Manager Account Registration. 15 // 16 // ## Example Usage 17 // 18 // ### Basic Usage 19 // 20 // <!--Start PulumiCodeChooser --> 21 // ```go 22 // package main 23 // 24 // import ( 25 // 26 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/auditmanager" 27 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 28 // 29 // ) 30 // 31 // func main() { 32 // pulumi.Run(func(ctx *pulumi.Context) error { 33 // _, err := auditmanager.NewAccountRegistration(ctx, "example", nil) 34 // if err != nil { 35 // return err 36 // } 37 // return nil 38 // }) 39 // } 40 // 41 // ``` 42 // <!--End PulumiCodeChooser --> 43 // 44 // ### Deregister On Destroy 45 // 46 // <!--Start PulumiCodeChooser --> 47 // ```go 48 // package main 49 // 50 // import ( 51 // 52 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/auditmanager" 53 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 54 // 55 // ) 56 // 57 // func main() { 58 // pulumi.Run(func(ctx *pulumi.Context) error { 59 // _, err := auditmanager.NewAccountRegistration(ctx, "example", &auditmanager.AccountRegistrationArgs{ 60 // DeregisterOnDestroy: pulumi.Bool(true), 61 // }) 62 // if err != nil { 63 // return err 64 // } 65 // return nil 66 // }) 67 // } 68 // 69 // ``` 70 // <!--End PulumiCodeChooser --> 71 // 72 // ## Import 73 // 74 // Using `pulumi import`, import Audit Manager Account Registration resources using the `id`. For example: 75 // 76 // ```sh 77 // $ pulumi import aws:auditmanager/accountRegistration:AccountRegistration example us-east-1 78 // ``` 79 type AccountRegistration struct { 80 pulumi.CustomResourceState 81 82 // Identifier for the delegated administrator account. 83 DelegatedAdminAccount pulumi.StringPtrOutput `pulumi:"delegatedAdminAccount"` 84 // Flag to deregister AuditManager in the account upon destruction. Defaults to `false` (ie. AuditManager will remain active in the account, even if this resource is removed). 85 DeregisterOnDestroy pulumi.BoolPtrOutput `pulumi:"deregisterOnDestroy"` 86 // KMS key identifier. 87 KmsKey pulumi.StringPtrOutput `pulumi:"kmsKey"` 88 // Status of the account registration request. 89 Status pulumi.StringOutput `pulumi:"status"` 90 } 91 92 // NewAccountRegistration registers a new resource with the given unique name, arguments, and options. 93 func NewAccountRegistration(ctx *pulumi.Context, 94 name string, args *AccountRegistrationArgs, opts ...pulumi.ResourceOption) (*AccountRegistration, error) { 95 if args == nil { 96 args = &AccountRegistrationArgs{} 97 } 98 99 opts = internal.PkgResourceDefaultOpts(opts) 100 var resource AccountRegistration 101 err := ctx.RegisterResource("aws:auditmanager/accountRegistration:AccountRegistration", name, args, &resource, opts...) 102 if err != nil { 103 return nil, err 104 } 105 return &resource, nil 106 } 107 108 // GetAccountRegistration gets an existing AccountRegistration resource's state with the given name, ID, and optional 109 // state properties that are used to uniquely qualify the lookup (nil if not required). 110 func GetAccountRegistration(ctx *pulumi.Context, 111 name string, id pulumi.IDInput, state *AccountRegistrationState, opts ...pulumi.ResourceOption) (*AccountRegistration, error) { 112 var resource AccountRegistration 113 err := ctx.ReadResource("aws:auditmanager/accountRegistration:AccountRegistration", name, id, state, &resource, opts...) 114 if err != nil { 115 return nil, err 116 } 117 return &resource, nil 118 } 119 120 // Input properties used for looking up and filtering AccountRegistration resources. 121 type accountRegistrationState struct { 122 // Identifier for the delegated administrator account. 123 DelegatedAdminAccount *string `pulumi:"delegatedAdminAccount"` 124 // Flag to deregister AuditManager in the account upon destruction. Defaults to `false` (ie. AuditManager will remain active in the account, even if this resource is removed). 125 DeregisterOnDestroy *bool `pulumi:"deregisterOnDestroy"` 126 // KMS key identifier. 127 KmsKey *string `pulumi:"kmsKey"` 128 // Status of the account registration request. 129 Status *string `pulumi:"status"` 130 } 131 132 type AccountRegistrationState struct { 133 // Identifier for the delegated administrator account. 134 DelegatedAdminAccount pulumi.StringPtrInput 135 // Flag to deregister AuditManager in the account upon destruction. Defaults to `false` (ie. AuditManager will remain active in the account, even if this resource is removed). 136 DeregisterOnDestroy pulumi.BoolPtrInput 137 // KMS key identifier. 138 KmsKey pulumi.StringPtrInput 139 // Status of the account registration request. 140 Status pulumi.StringPtrInput 141 } 142 143 func (AccountRegistrationState) ElementType() reflect.Type { 144 return reflect.TypeOf((*accountRegistrationState)(nil)).Elem() 145 } 146 147 type accountRegistrationArgs struct { 148 // Identifier for the delegated administrator account. 149 DelegatedAdminAccount *string `pulumi:"delegatedAdminAccount"` 150 // Flag to deregister AuditManager in the account upon destruction. Defaults to `false` (ie. AuditManager will remain active in the account, even if this resource is removed). 151 DeregisterOnDestroy *bool `pulumi:"deregisterOnDestroy"` 152 // KMS key identifier. 153 KmsKey *string `pulumi:"kmsKey"` 154 } 155 156 // The set of arguments for constructing a AccountRegistration resource. 157 type AccountRegistrationArgs struct { 158 // Identifier for the delegated administrator account. 159 DelegatedAdminAccount pulumi.StringPtrInput 160 // Flag to deregister AuditManager in the account upon destruction. Defaults to `false` (ie. AuditManager will remain active in the account, even if this resource is removed). 161 DeregisterOnDestroy pulumi.BoolPtrInput 162 // KMS key identifier. 163 KmsKey pulumi.StringPtrInput 164 } 165 166 func (AccountRegistrationArgs) ElementType() reflect.Type { 167 return reflect.TypeOf((*accountRegistrationArgs)(nil)).Elem() 168 } 169 170 type AccountRegistrationInput interface { 171 pulumi.Input 172 173 ToAccountRegistrationOutput() AccountRegistrationOutput 174 ToAccountRegistrationOutputWithContext(ctx context.Context) AccountRegistrationOutput 175 } 176 177 func (*AccountRegistration) ElementType() reflect.Type { 178 return reflect.TypeOf((**AccountRegistration)(nil)).Elem() 179 } 180 181 func (i *AccountRegistration) ToAccountRegistrationOutput() AccountRegistrationOutput { 182 return i.ToAccountRegistrationOutputWithContext(context.Background()) 183 } 184 185 func (i *AccountRegistration) ToAccountRegistrationOutputWithContext(ctx context.Context) AccountRegistrationOutput { 186 return pulumi.ToOutputWithContext(ctx, i).(AccountRegistrationOutput) 187 } 188 189 // AccountRegistrationArrayInput is an input type that accepts AccountRegistrationArray and AccountRegistrationArrayOutput values. 190 // You can construct a concrete instance of `AccountRegistrationArrayInput` via: 191 // 192 // AccountRegistrationArray{ AccountRegistrationArgs{...} } 193 type AccountRegistrationArrayInput interface { 194 pulumi.Input 195 196 ToAccountRegistrationArrayOutput() AccountRegistrationArrayOutput 197 ToAccountRegistrationArrayOutputWithContext(context.Context) AccountRegistrationArrayOutput 198 } 199 200 type AccountRegistrationArray []AccountRegistrationInput 201 202 func (AccountRegistrationArray) ElementType() reflect.Type { 203 return reflect.TypeOf((*[]*AccountRegistration)(nil)).Elem() 204 } 205 206 func (i AccountRegistrationArray) ToAccountRegistrationArrayOutput() AccountRegistrationArrayOutput { 207 return i.ToAccountRegistrationArrayOutputWithContext(context.Background()) 208 } 209 210 func (i AccountRegistrationArray) ToAccountRegistrationArrayOutputWithContext(ctx context.Context) AccountRegistrationArrayOutput { 211 return pulumi.ToOutputWithContext(ctx, i).(AccountRegistrationArrayOutput) 212 } 213 214 // AccountRegistrationMapInput is an input type that accepts AccountRegistrationMap and AccountRegistrationMapOutput values. 215 // You can construct a concrete instance of `AccountRegistrationMapInput` via: 216 // 217 // AccountRegistrationMap{ "key": AccountRegistrationArgs{...} } 218 type AccountRegistrationMapInput interface { 219 pulumi.Input 220 221 ToAccountRegistrationMapOutput() AccountRegistrationMapOutput 222 ToAccountRegistrationMapOutputWithContext(context.Context) AccountRegistrationMapOutput 223 } 224 225 type AccountRegistrationMap map[string]AccountRegistrationInput 226 227 func (AccountRegistrationMap) ElementType() reflect.Type { 228 return reflect.TypeOf((*map[string]*AccountRegistration)(nil)).Elem() 229 } 230 231 func (i AccountRegistrationMap) ToAccountRegistrationMapOutput() AccountRegistrationMapOutput { 232 return i.ToAccountRegistrationMapOutputWithContext(context.Background()) 233 } 234 235 func (i AccountRegistrationMap) ToAccountRegistrationMapOutputWithContext(ctx context.Context) AccountRegistrationMapOutput { 236 return pulumi.ToOutputWithContext(ctx, i).(AccountRegistrationMapOutput) 237 } 238 239 type AccountRegistrationOutput struct{ *pulumi.OutputState } 240 241 func (AccountRegistrationOutput) ElementType() reflect.Type { 242 return reflect.TypeOf((**AccountRegistration)(nil)).Elem() 243 } 244 245 func (o AccountRegistrationOutput) ToAccountRegistrationOutput() AccountRegistrationOutput { 246 return o 247 } 248 249 func (o AccountRegistrationOutput) ToAccountRegistrationOutputWithContext(ctx context.Context) AccountRegistrationOutput { 250 return o 251 } 252 253 // Identifier for the delegated administrator account. 254 func (o AccountRegistrationOutput) DelegatedAdminAccount() pulumi.StringPtrOutput { 255 return o.ApplyT(func(v *AccountRegistration) pulumi.StringPtrOutput { return v.DelegatedAdminAccount }).(pulumi.StringPtrOutput) 256 } 257 258 // Flag to deregister AuditManager in the account upon destruction. Defaults to `false` (ie. AuditManager will remain active in the account, even if this resource is removed). 259 func (o AccountRegistrationOutput) DeregisterOnDestroy() pulumi.BoolPtrOutput { 260 return o.ApplyT(func(v *AccountRegistration) pulumi.BoolPtrOutput { return v.DeregisterOnDestroy }).(pulumi.BoolPtrOutput) 261 } 262 263 // KMS key identifier. 264 func (o AccountRegistrationOutput) KmsKey() pulumi.StringPtrOutput { 265 return o.ApplyT(func(v *AccountRegistration) pulumi.StringPtrOutput { return v.KmsKey }).(pulumi.StringPtrOutput) 266 } 267 268 // Status of the account registration request. 269 func (o AccountRegistrationOutput) Status() pulumi.StringOutput { 270 return o.ApplyT(func(v *AccountRegistration) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) 271 } 272 273 type AccountRegistrationArrayOutput struct{ *pulumi.OutputState } 274 275 func (AccountRegistrationArrayOutput) ElementType() reflect.Type { 276 return reflect.TypeOf((*[]*AccountRegistration)(nil)).Elem() 277 } 278 279 func (o AccountRegistrationArrayOutput) ToAccountRegistrationArrayOutput() AccountRegistrationArrayOutput { 280 return o 281 } 282 283 func (o AccountRegistrationArrayOutput) ToAccountRegistrationArrayOutputWithContext(ctx context.Context) AccountRegistrationArrayOutput { 284 return o 285 } 286 287 func (o AccountRegistrationArrayOutput) Index(i pulumi.IntInput) AccountRegistrationOutput { 288 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *AccountRegistration { 289 return vs[0].([]*AccountRegistration)[vs[1].(int)] 290 }).(AccountRegistrationOutput) 291 } 292 293 type AccountRegistrationMapOutput struct{ *pulumi.OutputState } 294 295 func (AccountRegistrationMapOutput) ElementType() reflect.Type { 296 return reflect.TypeOf((*map[string]*AccountRegistration)(nil)).Elem() 297 } 298 299 func (o AccountRegistrationMapOutput) ToAccountRegistrationMapOutput() AccountRegistrationMapOutput { 300 return o 301 } 302 303 func (o AccountRegistrationMapOutput) ToAccountRegistrationMapOutputWithContext(ctx context.Context) AccountRegistrationMapOutput { 304 return o 305 } 306 307 func (o AccountRegistrationMapOutput) MapIndex(k pulumi.StringInput) AccountRegistrationOutput { 308 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *AccountRegistration { 309 return vs[0].(map[string]*AccountRegistration)[vs[1].(string)] 310 }).(AccountRegistrationOutput) 311 } 312 313 func init() { 314 pulumi.RegisterInputType(reflect.TypeOf((*AccountRegistrationInput)(nil)).Elem(), &AccountRegistration{}) 315 pulumi.RegisterInputType(reflect.TypeOf((*AccountRegistrationArrayInput)(nil)).Elem(), AccountRegistrationArray{}) 316 pulumi.RegisterInputType(reflect.TypeOf((*AccountRegistrationMapInput)(nil)).Elem(), AccountRegistrationMap{}) 317 pulumi.RegisterOutputType(AccountRegistrationOutput{}) 318 pulumi.RegisterOutputType(AccountRegistrationArrayOutput{}) 319 pulumi.RegisterOutputType(AccountRegistrationMapOutput{}) 320 }