/
getSpacesBucket.go
152 lines (132 loc) · 5.2 KB
/
getSpacesBucket.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
// 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 digitalocean
import (
"context"
"reflect"
"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean/internal"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// Get information on a Spaces bucket for use in other resources. This is useful if the Spaces bucket in question
// is not managed by the provider or you need to utilize any of the bucket's data.
//
// ## Example Usage
//
// Get the bucket by name:
//
// ```go
// package main
//
// import (
//
// "github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean"
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
//
// )
//
// func main() {
// pulumi.Run(func(ctx *pulumi.Context) error {
// example, err := digitalocean.LookupSpacesBucket(ctx, &digitalocean.LookupSpacesBucketArgs{
// Name: "my-spaces-bucket",
// Region: "nyc3",
// }, nil)
// if err != nil {
// return err
// }
// ctx.Export("bucketDomainName", example.BucketDomainName)
// return nil
// })
// }
//
// ```
func LookupSpacesBucket(ctx *pulumi.Context, args *LookupSpacesBucketArgs, opts ...pulumi.InvokeOption) (*LookupSpacesBucketResult, error) {
opts = internal.PkgInvokeDefaultOpts(opts)
var rv LookupSpacesBucketResult
err := ctx.Invoke("digitalocean:index/getSpacesBucket:getSpacesBucket", args, &rv, opts...)
if err != nil {
return nil, err
}
return &rv, nil
}
// A collection of arguments for invoking getSpacesBucket.
type LookupSpacesBucketArgs struct {
// The name of the Spaces bucket.
Name string `pulumi:"name"`
// The slug of the region where the bucket is stored.
Region string `pulumi:"region"`
}
// A collection of values returned by getSpacesBucket.
type LookupSpacesBucketResult struct {
// The FQDN of the bucket (e.g. bucket-name.nyc3.digitaloceanspaces.com)
BucketDomainName string `pulumi:"bucketDomainName"`
// The FQDN of the bucket without the bucket name (e.g. nyc3.digitaloceanspaces.com)
Endpoint string `pulumi:"endpoint"`
// The provider-assigned unique ID for this managed resource.
Id string `pulumi:"id"`
// The name of the Spaces bucket
Name string `pulumi:"name"`
// The slug of the region where the bucket is stored.
Region string `pulumi:"region"`
// The uniform resource name of the bucket
Urn string `pulumi:"urn"`
}
func LookupSpacesBucketOutput(ctx *pulumi.Context, args LookupSpacesBucketOutputArgs, opts ...pulumi.InvokeOption) LookupSpacesBucketResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (LookupSpacesBucketResult, error) {
args := v.(LookupSpacesBucketArgs)
r, err := LookupSpacesBucket(ctx, &args, opts...)
var s LookupSpacesBucketResult
if r != nil {
s = *r
}
return s, err
}).(LookupSpacesBucketResultOutput)
}
// A collection of arguments for invoking getSpacesBucket.
type LookupSpacesBucketOutputArgs struct {
// The name of the Spaces bucket.
Name pulumi.StringInput `pulumi:"name"`
// The slug of the region where the bucket is stored.
Region pulumi.StringInput `pulumi:"region"`
}
func (LookupSpacesBucketOutputArgs) ElementType() reflect.Type {
return reflect.TypeOf((*LookupSpacesBucketArgs)(nil)).Elem()
}
// A collection of values returned by getSpacesBucket.
type LookupSpacesBucketResultOutput struct{ *pulumi.OutputState }
func (LookupSpacesBucketResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*LookupSpacesBucketResult)(nil)).Elem()
}
func (o LookupSpacesBucketResultOutput) ToLookupSpacesBucketResultOutput() LookupSpacesBucketResultOutput {
return o
}
func (o LookupSpacesBucketResultOutput) ToLookupSpacesBucketResultOutputWithContext(ctx context.Context) LookupSpacesBucketResultOutput {
return o
}
// The FQDN of the bucket (e.g. bucket-name.nyc3.digitaloceanspaces.com)
func (o LookupSpacesBucketResultOutput) BucketDomainName() pulumi.StringOutput {
return o.ApplyT(func(v LookupSpacesBucketResult) string { return v.BucketDomainName }).(pulumi.StringOutput)
}
// The FQDN of the bucket without the bucket name (e.g. nyc3.digitaloceanspaces.com)
func (o LookupSpacesBucketResultOutput) Endpoint() pulumi.StringOutput {
return o.ApplyT(func(v LookupSpacesBucketResult) string { return v.Endpoint }).(pulumi.StringOutput)
}
// The provider-assigned unique ID for this managed resource.
func (o LookupSpacesBucketResultOutput) Id() pulumi.StringOutput {
return o.ApplyT(func(v LookupSpacesBucketResult) string { return v.Id }).(pulumi.StringOutput)
}
// The name of the Spaces bucket
func (o LookupSpacesBucketResultOutput) Name() pulumi.StringOutput {
return o.ApplyT(func(v LookupSpacesBucketResult) string { return v.Name }).(pulumi.StringOutput)
}
// The slug of the region where the bucket is stored.
func (o LookupSpacesBucketResultOutput) Region() pulumi.StringOutput {
return o.ApplyT(func(v LookupSpacesBucketResult) string { return v.Region }).(pulumi.StringOutput)
}
// The uniform resource name of the bucket
func (o LookupSpacesBucketResultOutput) Urn() pulumi.StringOutput {
return o.ApplyT(func(v LookupSpacesBucketResult) string { return v.Urn }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterOutputType(LookupSpacesBucketResultOutput{})
}