VolumeAttachment [page]deterministic
VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node. VolumeAttachment objects are non-namespaced.
`apiVersion: storage.k8s.io/v1`
`import "k8s.io/api/storage/v1"`
## VolumeAttachment {#VolumeAttachment}
VolumeAttachment captures the intent to attach or detach the specified volume to/from the specified node.
VolumeAttachment objects are non-namespaced.
<hr>
<table> <thead><tr><th>Field</th><th>Description</th></tr></thead> <tbody> <tr> <td><code>apiVersion</code><br/><em>string</em></td> <td>APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources</td> </tr> <tr> <td><code>kind</code><br/><em>string</em></td> <td>Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds</td> </tr> <tr> <td><code>metadata</code><br/><em><a href="">ObjectMeta</a></em></td> <td>Standard object metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata</td> </tr> <tr> <td><code>spec</code> <strong>*</strong><br/><em><a href="">VolumeAttachmentSpec</a></em></td> <td>spec represents specification of the desired attach/detach volume behavior. Populated by the Kubernetes system.</td> </tr> <tr> <td><code>status</code><br/><em><a href="">VolumeAttachmentStatus</a></em></td> <td>status represents status of the VolumeAttachment request. Populated by the entity completing the attach or detach operation, i.e. the external-attacher.</td> </tr> </tbody> </table>
## VolumeAttachmentSpec {#VolumeAttachmentSpec}
VolumeAttachmentSpec is the specification of a VolumeAttachment request.
<hr>
<table> <thead><tr><th>Field</th><th>Description</th></tr></thead> <tbody> <tr> <td><code>attacher</code> <strong>*</strong><br/><em>string</em></td> <td>attacher indicates the name of the volume driver that MUST handle this request. This is the name returned by GetPluginName().</td> </tr> <tr> <td><code>nodeName</code> <strong>*</strong><br/><em>string</em></td> <td>nodeName represents the node that the volume should be attached to.</td> </tr> <tr> <td><code>source</code> <strong>*</strong><br/><em><a href="">VolumeAttachmentSource</a></em></td> <td>source represents the volume that should be attached.</td> </tr> </tbody> </table>
## VolumeAttachmentStatus {#VolumeAttachmentStatus}
VolumeAttachmentStatus is the status of a VolumeAttachment request.
<hr>
<table> <thead><tr><th>Field</th><th>Description</th></tr></thead> <tbody> <tr> <td><code>attachError</code><br/><em><a href="">VolumeError</a></em></td> <td>attachError represents the last error encountered during attach operation, if any. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.</td> </tr> <tr> <td><code>attached</code> <strong>*</strong><br/><em>boolean</em></td> <td>attached indicates the volume is successfully attached. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.</td> </tr> <tr> <td><code>attachmentMetadata</code><br/><em>object</em></td> <td>attachmentMetadata is populated with any information returned by the attach operation, upon successful attach, that must be passed into subsequent WaitForAttach or Mount calls. This field must only be set by the entity completing the attach operation, i.e. the external-attacher.</td> </tr> <tr> <td><code>detachError</code><br/><em><a href="">VolumeError</a></em></td> …(trimmed)