github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/ebs/getDefaultKmsKey.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 ebs 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 // Use this data source to get the default EBS encryption KMS key in the current region. 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/ebs" 25 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 26 // 27 // ) 28 // 29 // func main() { 30 // pulumi.Run(func(ctx *pulumi.Context) error { 31 // current, err := ebs.LookupDefaultKmsKey(ctx, nil, nil) 32 // if err != nil { 33 // return err 34 // } 35 // _, err = ebs.NewVolume(ctx, "example", &ebs.VolumeArgs{ 36 // AvailabilityZone: pulumi.String("us-west-2a"), 37 // Encrypted: pulumi.Bool(true), 38 // KmsKeyId: pulumi.String(current.KeyArn), 39 // }) 40 // if err != nil { 41 // return err 42 // } 43 // return nil 44 // }) 45 // } 46 // 47 // ``` 48 // <!--End PulumiCodeChooser --> 49 func LookupDefaultKmsKey(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*LookupDefaultKmsKeyResult, error) { 50 opts = internal.PkgInvokeDefaultOpts(opts) 51 var rv LookupDefaultKmsKeyResult 52 err := ctx.Invoke("aws:ebs/getDefaultKmsKey:getDefaultKmsKey", nil, &rv, opts...) 53 if err != nil { 54 return nil, err 55 } 56 return &rv, nil 57 } 58 59 // A collection of values returned by getDefaultKmsKey. 60 type LookupDefaultKmsKeyResult struct { 61 // The provider-assigned unique ID for this managed resource. 62 Id string `pulumi:"id"` 63 // ARN of the default KMS key uses to encrypt an EBS volume in this region when no key is specified in an API call that creates the volume and encryption by default is enabled. 64 KeyArn string `pulumi:"keyArn"` 65 } 66 67 func LookupDefaultKmsKeyOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) LookupDefaultKmsKeyResultOutput { 68 return pulumi.ToOutput(0).ApplyT(func(int) (LookupDefaultKmsKeyResult, error) { 69 r, err := LookupDefaultKmsKey(ctx, opts...) 70 var s LookupDefaultKmsKeyResult 71 if r != nil { 72 s = *r 73 } 74 return s, err 75 }).(LookupDefaultKmsKeyResultOutput) 76 } 77 78 // A collection of values returned by getDefaultKmsKey. 79 type LookupDefaultKmsKeyResultOutput struct{ *pulumi.OutputState } 80 81 func (LookupDefaultKmsKeyResultOutput) ElementType() reflect.Type { 82 return reflect.TypeOf((*LookupDefaultKmsKeyResult)(nil)).Elem() 83 } 84 85 func (o LookupDefaultKmsKeyResultOutput) ToLookupDefaultKmsKeyResultOutput() LookupDefaultKmsKeyResultOutput { 86 return o 87 } 88 89 func (o LookupDefaultKmsKeyResultOutput) ToLookupDefaultKmsKeyResultOutputWithContext(ctx context.Context) LookupDefaultKmsKeyResultOutput { 90 return o 91 } 92 93 // The provider-assigned unique ID for this managed resource. 94 func (o LookupDefaultKmsKeyResultOutput) Id() pulumi.StringOutput { 95 return o.ApplyT(func(v LookupDefaultKmsKeyResult) string { return v.Id }).(pulumi.StringOutput) 96 } 97 98 // ARN of the default KMS key uses to encrypt an EBS volume in this region when no key is specified in an API call that creates the volume and encryption by default is enabled. 99 func (o LookupDefaultKmsKeyResultOutput) KeyArn() pulumi.StringOutput { 100 return o.ApplyT(func(v LookupDefaultKmsKeyResult) string { return v.KeyArn }).(pulumi.StringOutput) 101 } 102 103 func init() { 104 pulumi.RegisterOutputType(LookupDefaultKmsKeyResultOutput{}) 105 }