/
getVolumeV2.go
188 lines (165 loc) · 6.29 KB
/
getVolumeV2.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
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
// 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 blockstorage
import (
"context"
"reflect"
"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/internal"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
// Use this data source to get information about an existing volume.
//
// ## Example Usage
//
// <!--Start PulumiCodeChooser -->
// ```go
// package main
//
// import (
//
// "github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/blockstorage"
// "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
//
// )
//
// func main() {
// pulumi.Run(func(ctx *pulumi.Context) error {
// _, err := blockstorage.LookupVolumeV2(ctx, &blockstorage.LookupVolumeV2Args{
// Name: pulumi.StringRef("volume_1"),
// }, nil)
// if err != nil {
// return err
// }
// return nil
// })
// }
//
// ```
// <!--End PulumiCodeChooser -->
func LookupVolumeV2(ctx *pulumi.Context, args *LookupVolumeV2Args, opts ...pulumi.InvokeOption) (*LookupVolumeV2Result, error) {
opts = internal.PkgInvokeDefaultOpts(opts)
var rv LookupVolumeV2Result
err := ctx.Invoke("openstack:blockstorage/getVolumeV2:getVolumeV2", args, &rv, opts...)
if err != nil {
return nil, err
}
return &rv, nil
}
// A collection of arguments for invoking getVolumeV2.
type LookupVolumeV2Args struct {
// Indicates if the volume is bootable.
Bootable *string `pulumi:"bootable"`
// Metadata key/value pairs associated with the volume.
Metadata map[string]interface{} `pulumi:"metadata"`
// The name of the volume.
Name *string `pulumi:"name"`
// The region in which to obtain the V2 Block Storage
// client. If omitted, the `region` argument of the provider is used.
Region *string `pulumi:"region"`
// The status of the volume.
Status *string `pulumi:"status"`
// The type of the volume.
VolumeType *string `pulumi:"volumeType"`
}
// A collection of values returned by getVolumeV2.
type LookupVolumeV2Result struct {
// Indicates if the volume is bootable.
Bootable string `pulumi:"bootable"`
// The provider-assigned unique ID for this managed resource.
Id string `pulumi:"id"`
// See Argument Reference above.
Metadata map[string]interface{} `pulumi:"metadata"`
// See Argument Reference above.
Name string `pulumi:"name"`
// See Argument Reference above.
Region string `pulumi:"region"`
// The size of the volume in GBs.
Size int `pulumi:"size"`
// The ID of the volume from which the current volume was created.
SourceVolumeId string `pulumi:"sourceVolumeId"`
// See Argument Reference above.
Status string `pulumi:"status"`
// The type of the volume.
VolumeType string `pulumi:"volumeType"`
}
func LookupVolumeV2Output(ctx *pulumi.Context, args LookupVolumeV2OutputArgs, opts ...pulumi.InvokeOption) LookupVolumeV2ResultOutput {
return pulumi.ToOutputWithContext(context.Background(), args).
ApplyT(func(v interface{}) (LookupVolumeV2Result, error) {
args := v.(LookupVolumeV2Args)
r, err := LookupVolumeV2(ctx, &args, opts...)
var s LookupVolumeV2Result
if r != nil {
s = *r
}
return s, err
}).(LookupVolumeV2ResultOutput)
}
// A collection of arguments for invoking getVolumeV2.
type LookupVolumeV2OutputArgs struct {
// Indicates if the volume is bootable.
Bootable pulumi.StringPtrInput `pulumi:"bootable"`
// Metadata key/value pairs associated with the volume.
Metadata pulumi.MapInput `pulumi:"metadata"`
// The name of the volume.
Name pulumi.StringPtrInput `pulumi:"name"`
// The region in which to obtain the V2 Block Storage
// client. If omitted, the `region` argument of the provider is used.
Region pulumi.StringPtrInput `pulumi:"region"`
// The status of the volume.
Status pulumi.StringPtrInput `pulumi:"status"`
// The type of the volume.
VolumeType pulumi.StringPtrInput `pulumi:"volumeType"`
}
func (LookupVolumeV2OutputArgs) ElementType() reflect.Type {
return reflect.TypeOf((*LookupVolumeV2Args)(nil)).Elem()
}
// A collection of values returned by getVolumeV2.
type LookupVolumeV2ResultOutput struct{ *pulumi.OutputState }
func (LookupVolumeV2ResultOutput) ElementType() reflect.Type {
return reflect.TypeOf((*LookupVolumeV2Result)(nil)).Elem()
}
func (o LookupVolumeV2ResultOutput) ToLookupVolumeV2ResultOutput() LookupVolumeV2ResultOutput {
return o
}
func (o LookupVolumeV2ResultOutput) ToLookupVolumeV2ResultOutputWithContext(ctx context.Context) LookupVolumeV2ResultOutput {
return o
}
// Indicates if the volume is bootable.
func (o LookupVolumeV2ResultOutput) Bootable() pulumi.StringOutput {
return o.ApplyT(func(v LookupVolumeV2Result) string { return v.Bootable }).(pulumi.StringOutput)
}
// The provider-assigned unique ID for this managed resource.
func (o LookupVolumeV2ResultOutput) Id() pulumi.StringOutput {
return o.ApplyT(func(v LookupVolumeV2Result) string { return v.Id }).(pulumi.StringOutput)
}
// See Argument Reference above.
func (o LookupVolumeV2ResultOutput) Metadata() pulumi.MapOutput {
return o.ApplyT(func(v LookupVolumeV2Result) map[string]interface{} { return v.Metadata }).(pulumi.MapOutput)
}
// See Argument Reference above.
func (o LookupVolumeV2ResultOutput) Name() pulumi.StringOutput {
return o.ApplyT(func(v LookupVolumeV2Result) string { return v.Name }).(pulumi.StringOutput)
}
// See Argument Reference above.
func (o LookupVolumeV2ResultOutput) Region() pulumi.StringOutput {
return o.ApplyT(func(v LookupVolumeV2Result) string { return v.Region }).(pulumi.StringOutput)
}
// The size of the volume in GBs.
func (o LookupVolumeV2ResultOutput) Size() pulumi.IntOutput {
return o.ApplyT(func(v LookupVolumeV2Result) int { return v.Size }).(pulumi.IntOutput)
}
// The ID of the volume from which the current volume was created.
func (o LookupVolumeV2ResultOutput) SourceVolumeId() pulumi.StringOutput {
return o.ApplyT(func(v LookupVolumeV2Result) string { return v.SourceVolumeId }).(pulumi.StringOutput)
}
// See Argument Reference above.
func (o LookupVolumeV2ResultOutput) Status() pulumi.StringOutput {
return o.ApplyT(func(v LookupVolumeV2Result) string { return v.Status }).(pulumi.StringOutput)
}
// The type of the volume.
func (o LookupVolumeV2ResultOutput) VolumeType() pulumi.StringOutput {
return o.ApplyT(func(v LookupVolumeV2Result) string { return v.VolumeType }).(pulumi.StringOutput)
}
func init() {
pulumi.RegisterOutputType(LookupVolumeV2ResultOutput{})
}