github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/lightsail/bucketResourceAccess.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 lightsail 5 6 import ( 7 "context" 8 "reflect" 9 10 "errors" 11 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 12 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 13 ) 14 15 // Provides a lightsail resource access to a bucket. 16 // 17 // ## Import 18 // 19 // Using `pulumi import`, import `aws_lightsail_bucket_resource_access` using the `id` attribute. For example: 20 // 21 // ```sh 22 // $ pulumi import aws:lightsail/bucketResourceAccess:BucketResourceAccess test example-bucket,example-instance 23 // ``` 24 type BucketResourceAccess struct { 25 pulumi.CustomResourceState 26 27 // The name of the bucket to grant access to. 28 BucketName pulumi.StringOutput `pulumi:"bucketName"` 29 // The name of the resource to be granted bucket access. 30 ResourceName pulumi.StringOutput `pulumi:"resourceName"` 31 } 32 33 // NewBucketResourceAccess registers a new resource with the given unique name, arguments, and options. 34 func NewBucketResourceAccess(ctx *pulumi.Context, 35 name string, args *BucketResourceAccessArgs, opts ...pulumi.ResourceOption) (*BucketResourceAccess, error) { 36 if args == nil { 37 return nil, errors.New("missing one or more required arguments") 38 } 39 40 if args.BucketName == nil { 41 return nil, errors.New("invalid value for required argument 'BucketName'") 42 } 43 if args.ResourceName == nil { 44 return nil, errors.New("invalid value for required argument 'ResourceName'") 45 } 46 opts = internal.PkgResourceDefaultOpts(opts) 47 var resource BucketResourceAccess 48 err := ctx.RegisterResource("aws:lightsail/bucketResourceAccess:BucketResourceAccess", name, args, &resource, opts...) 49 if err != nil { 50 return nil, err 51 } 52 return &resource, nil 53 } 54 55 // GetBucketResourceAccess gets an existing BucketResourceAccess resource's state with the given name, ID, and optional 56 // state properties that are used to uniquely qualify the lookup (nil if not required). 57 func GetBucketResourceAccess(ctx *pulumi.Context, 58 name string, id pulumi.IDInput, state *BucketResourceAccessState, opts ...pulumi.ResourceOption) (*BucketResourceAccess, error) { 59 var resource BucketResourceAccess 60 err := ctx.ReadResource("aws:lightsail/bucketResourceAccess:BucketResourceAccess", name, id, state, &resource, opts...) 61 if err != nil { 62 return nil, err 63 } 64 return &resource, nil 65 } 66 67 // Input properties used for looking up and filtering BucketResourceAccess resources. 68 type bucketResourceAccessState struct { 69 // The name of the bucket to grant access to. 70 BucketName *string `pulumi:"bucketName"` 71 // The name of the resource to be granted bucket access. 72 ResourceName *string `pulumi:"resourceName"` 73 } 74 75 type BucketResourceAccessState struct { 76 // The name of the bucket to grant access to. 77 BucketName pulumi.StringPtrInput 78 // The name of the resource to be granted bucket access. 79 ResourceName pulumi.StringPtrInput 80 } 81 82 func (BucketResourceAccessState) ElementType() reflect.Type { 83 return reflect.TypeOf((*bucketResourceAccessState)(nil)).Elem() 84 } 85 86 type bucketResourceAccessArgs struct { 87 // The name of the bucket to grant access to. 88 BucketName string `pulumi:"bucketName"` 89 // The name of the resource to be granted bucket access. 90 ResourceName string `pulumi:"resourceName"` 91 } 92 93 // The set of arguments for constructing a BucketResourceAccess resource. 94 type BucketResourceAccessArgs struct { 95 // The name of the bucket to grant access to. 96 BucketName pulumi.StringInput 97 // The name of the resource to be granted bucket access. 98 ResourceName pulumi.StringInput 99 } 100 101 func (BucketResourceAccessArgs) ElementType() reflect.Type { 102 return reflect.TypeOf((*bucketResourceAccessArgs)(nil)).Elem() 103 } 104 105 type BucketResourceAccessInput interface { 106 pulumi.Input 107 108 ToBucketResourceAccessOutput() BucketResourceAccessOutput 109 ToBucketResourceAccessOutputWithContext(ctx context.Context) BucketResourceAccessOutput 110 } 111 112 func (*BucketResourceAccess) ElementType() reflect.Type { 113 return reflect.TypeOf((**BucketResourceAccess)(nil)).Elem() 114 } 115 116 func (i *BucketResourceAccess) ToBucketResourceAccessOutput() BucketResourceAccessOutput { 117 return i.ToBucketResourceAccessOutputWithContext(context.Background()) 118 } 119 120 func (i *BucketResourceAccess) ToBucketResourceAccessOutputWithContext(ctx context.Context) BucketResourceAccessOutput { 121 return pulumi.ToOutputWithContext(ctx, i).(BucketResourceAccessOutput) 122 } 123 124 // BucketResourceAccessArrayInput is an input type that accepts BucketResourceAccessArray and BucketResourceAccessArrayOutput values. 125 // You can construct a concrete instance of `BucketResourceAccessArrayInput` via: 126 // 127 // BucketResourceAccessArray{ BucketResourceAccessArgs{...} } 128 type BucketResourceAccessArrayInput interface { 129 pulumi.Input 130 131 ToBucketResourceAccessArrayOutput() BucketResourceAccessArrayOutput 132 ToBucketResourceAccessArrayOutputWithContext(context.Context) BucketResourceAccessArrayOutput 133 } 134 135 type BucketResourceAccessArray []BucketResourceAccessInput 136 137 func (BucketResourceAccessArray) ElementType() reflect.Type { 138 return reflect.TypeOf((*[]*BucketResourceAccess)(nil)).Elem() 139 } 140 141 func (i BucketResourceAccessArray) ToBucketResourceAccessArrayOutput() BucketResourceAccessArrayOutput { 142 return i.ToBucketResourceAccessArrayOutputWithContext(context.Background()) 143 } 144 145 func (i BucketResourceAccessArray) ToBucketResourceAccessArrayOutputWithContext(ctx context.Context) BucketResourceAccessArrayOutput { 146 return pulumi.ToOutputWithContext(ctx, i).(BucketResourceAccessArrayOutput) 147 } 148 149 // BucketResourceAccessMapInput is an input type that accepts BucketResourceAccessMap and BucketResourceAccessMapOutput values. 150 // You can construct a concrete instance of `BucketResourceAccessMapInput` via: 151 // 152 // BucketResourceAccessMap{ "key": BucketResourceAccessArgs{...} } 153 type BucketResourceAccessMapInput interface { 154 pulumi.Input 155 156 ToBucketResourceAccessMapOutput() BucketResourceAccessMapOutput 157 ToBucketResourceAccessMapOutputWithContext(context.Context) BucketResourceAccessMapOutput 158 } 159 160 type BucketResourceAccessMap map[string]BucketResourceAccessInput 161 162 func (BucketResourceAccessMap) ElementType() reflect.Type { 163 return reflect.TypeOf((*map[string]*BucketResourceAccess)(nil)).Elem() 164 } 165 166 func (i BucketResourceAccessMap) ToBucketResourceAccessMapOutput() BucketResourceAccessMapOutput { 167 return i.ToBucketResourceAccessMapOutputWithContext(context.Background()) 168 } 169 170 func (i BucketResourceAccessMap) ToBucketResourceAccessMapOutputWithContext(ctx context.Context) BucketResourceAccessMapOutput { 171 return pulumi.ToOutputWithContext(ctx, i).(BucketResourceAccessMapOutput) 172 } 173 174 type BucketResourceAccessOutput struct{ *pulumi.OutputState } 175 176 func (BucketResourceAccessOutput) ElementType() reflect.Type { 177 return reflect.TypeOf((**BucketResourceAccess)(nil)).Elem() 178 } 179 180 func (o BucketResourceAccessOutput) ToBucketResourceAccessOutput() BucketResourceAccessOutput { 181 return o 182 } 183 184 func (o BucketResourceAccessOutput) ToBucketResourceAccessOutputWithContext(ctx context.Context) BucketResourceAccessOutput { 185 return o 186 } 187 188 // The name of the bucket to grant access to. 189 func (o BucketResourceAccessOutput) BucketName() pulumi.StringOutput { 190 return o.ApplyT(func(v *BucketResourceAccess) pulumi.StringOutput { return v.BucketName }).(pulumi.StringOutput) 191 } 192 193 // The name of the resource to be granted bucket access. 194 func (o BucketResourceAccessOutput) ResourceName() pulumi.StringOutput { 195 return o.ApplyT(func(v *BucketResourceAccess) pulumi.StringOutput { return v.ResourceName }).(pulumi.StringOutput) 196 } 197 198 type BucketResourceAccessArrayOutput struct{ *pulumi.OutputState } 199 200 func (BucketResourceAccessArrayOutput) ElementType() reflect.Type { 201 return reflect.TypeOf((*[]*BucketResourceAccess)(nil)).Elem() 202 } 203 204 func (o BucketResourceAccessArrayOutput) ToBucketResourceAccessArrayOutput() BucketResourceAccessArrayOutput { 205 return o 206 } 207 208 func (o BucketResourceAccessArrayOutput) ToBucketResourceAccessArrayOutputWithContext(ctx context.Context) BucketResourceAccessArrayOutput { 209 return o 210 } 211 212 func (o BucketResourceAccessArrayOutput) Index(i pulumi.IntInput) BucketResourceAccessOutput { 213 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *BucketResourceAccess { 214 return vs[0].([]*BucketResourceAccess)[vs[1].(int)] 215 }).(BucketResourceAccessOutput) 216 } 217 218 type BucketResourceAccessMapOutput struct{ *pulumi.OutputState } 219 220 func (BucketResourceAccessMapOutput) ElementType() reflect.Type { 221 return reflect.TypeOf((*map[string]*BucketResourceAccess)(nil)).Elem() 222 } 223 224 func (o BucketResourceAccessMapOutput) ToBucketResourceAccessMapOutput() BucketResourceAccessMapOutput { 225 return o 226 } 227 228 func (o BucketResourceAccessMapOutput) ToBucketResourceAccessMapOutputWithContext(ctx context.Context) BucketResourceAccessMapOutput { 229 return o 230 } 231 232 func (o BucketResourceAccessMapOutput) MapIndex(k pulumi.StringInput) BucketResourceAccessOutput { 233 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *BucketResourceAccess { 234 return vs[0].(map[string]*BucketResourceAccess)[vs[1].(string)] 235 }).(BucketResourceAccessOutput) 236 } 237 238 func init() { 239 pulumi.RegisterInputType(reflect.TypeOf((*BucketResourceAccessInput)(nil)).Elem(), &BucketResourceAccess{}) 240 pulumi.RegisterInputType(reflect.TypeOf((*BucketResourceAccessArrayInput)(nil)).Elem(), BucketResourceAccessArray{}) 241 pulumi.RegisterInputType(reflect.TypeOf((*BucketResourceAccessMapInput)(nil)).Elem(), BucketResourceAccessMap{}) 242 pulumi.RegisterOutputType(BucketResourceAccessOutput{}) 243 pulumi.RegisterOutputType(BucketResourceAccessArrayOutput{}) 244 pulumi.RegisterOutputType(BucketResourceAccessMapOutput{}) 245 }