Code refactoring for bpa operator
[icn.git] / cmd / bpa-operator / vendor / k8s.io / api / storage / v1alpha1 / generated.proto
1 /*
2 Copyright The Kubernetes Authors.
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8     http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15 */
16
17
18 // This file was autogenerated by go-to-protobuf. Do not edit it manually!
19
20 syntax = 'proto2';
21
22 package k8s.io.api.storage.v1alpha1;
23
24 import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
25 import "k8s.io/apimachinery/pkg/runtime/generated.proto";
26 import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";
27
28 // Package-wide variables from generator "generated".
29 option go_package = "v1alpha1";
30
31 // VolumeAttachment captures the intent to attach or detach the specified volume
32 // to/from the specified node.
33 //
34 // VolumeAttachment objects are non-namespaced.
35 message VolumeAttachment {
36   // Standard object metadata.
37   // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
38   // +optional
39   optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
40
41   // Specification of the desired attach/detach volume behavior.
42   // Populated by the Kubernetes system.
43   optional VolumeAttachmentSpec spec = 2;
44
45   // Status of the VolumeAttachment request.
46   // Populated by the entity completing the attach or detach
47   // operation, i.e. the external-attacher.
48   // +optional
49   optional VolumeAttachmentStatus status = 3;
50 }
51
52 // VolumeAttachmentList is a collection of VolumeAttachment objects.
53 message VolumeAttachmentList {
54   // Standard list metadata
55   // More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
56   // +optional
57   optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
58
59   // Items is the list of VolumeAttachments
60   repeated VolumeAttachment items = 2;
61 }
62
63 // VolumeAttachmentSource represents a volume that should be attached.
64 // Right now only PersistenVolumes can be attached via external attacher,
65 // in future we may allow also inline volumes in pods.
66 // Exactly one member can be set.
67 message VolumeAttachmentSource {
68   // Name of the persistent volume to attach.
69   // +optional
70   optional string persistentVolumeName = 1;
71 }
72
73 // VolumeAttachmentSpec is the specification of a VolumeAttachment request.
74 message VolumeAttachmentSpec {
75   // Attacher indicates the name of the volume driver that MUST handle this
76   // request. This is the name returned by GetPluginName().
77   optional string attacher = 1;
78
79   // Source represents the volume that should be attached.
80   optional VolumeAttachmentSource source = 2;
81
82   // The node that the volume should be attached to.
83   optional string nodeName = 3;
84 }
85
86 // VolumeAttachmentStatus is the status of a VolumeAttachment request.
87 message VolumeAttachmentStatus {
88   // Indicates the volume is successfully attached.
89   // This field must only be set by the entity completing the attach
90   // operation, i.e. the external-attacher.
91   optional bool attached = 1;
92
93   // Upon successful attach, this field is populated with any
94   // information returned by the attach operation that must be passed
95   // into subsequent WaitForAttach or Mount calls.
96   // This field must only be set by the entity completing the attach
97   // operation, i.e. the external-attacher.
98   // +optional
99   map<string, string> attachmentMetadata = 2;
100
101   // The last error encountered during attach operation, if any.
102   // This field must only be set by the entity completing the attach
103   // operation, i.e. the external-attacher.
104   // +optional
105   optional VolumeError attachError = 3;
106
107   // The last error encountered during detach operation, if any.
108   // This field must only be set by the entity completing the detach
109   // operation, i.e. the external-attacher.
110   // +optional
111   optional VolumeError detachError = 4;
112 }
113
114 // VolumeError captures an error encountered during a volume operation.
115 message VolumeError {
116   // Time the error was encountered.
117   // +optional
118   optional k8s.io.apimachinery.pkg.apis.meta.v1.Time time = 1;
119
120   // String detailing the error encountered during Attach or Detach operation.
121   // This string maybe logged, so it should not contain sensitive
122   // information.
123   // +optional
124   optional string message = 2;
125 }
126