/* tslint:disable */ /* eslint-disable */ /** * Kubernetes * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: unversioned * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { exists } from '../runtime'; import { IoK8sApiCoreV1LocalObjectReference, IoK8sApiCoreV1LocalObjectReferenceFromJSON, IoK8sApiCoreV1LocalObjectReferenceToJSON, } from './'; /** * Represents a source location of a volume to mount, managed by an external CSI driver * @export * @interface IoK8sApiCoreV1CSIVolumeSource */ export interface IoK8sApiCoreV1CSIVolumeSource { /** * driver is the name of the CSI driver that handles this volume. Consult with your admin for the correct name as registered in the cluster. * @type {string} * @memberof IoK8sApiCoreV1CSIVolumeSource */ driver: string; /** * fsType to mount. Ex. "ext4", "xfs", "ntfs". If not provided, the empty value is passed to the associated CSI driver which will determine the default filesystem to apply. * @type {string} * @memberof IoK8sApiCoreV1CSIVolumeSource */ fsType?: string; /** * * @type {IoK8sApiCoreV1LocalObjectReference} * @memberof IoK8sApiCoreV1CSIVolumeSource */ nodePublishSecretRef?: IoK8sApiCoreV1LocalObjectReference; /** * readOnly specifies a read-only configuration for the volume. Defaults to false (read/write). * @type {boolean} * @memberof IoK8sApiCoreV1CSIVolumeSource */ readOnly?: boolean; /** * volumeAttributes stores driver-specific properties that are passed to the CSI driver. Consult your driver's documentation for supported values. * @type {{ [key: string]: string; }} * @memberof IoK8sApiCoreV1CSIVolumeSource */ volumeAttributes?: { [key: string]: string }; } export function IoK8sApiCoreV1CSIVolumeSourceFromJSON(json: any): IoK8sApiCoreV1CSIVolumeSource { return IoK8sApiCoreV1CSIVolumeSourceFromJSONTyped(json, false); } export function IoK8sApiCoreV1CSIVolumeSourceFromJSONTyped( json: any, _ignoreDiscriminator: boolean, ): IoK8sApiCoreV1CSIVolumeSource { if (json === undefined || json === null) { return json; } return { driver: json['driver'], fsType: !exists(json, 'fsType') ? undefined : json['fsType'], nodePublishSecretRef: !exists(json, 'nodePublishSecretRef') ? undefined : IoK8sApiCoreV1LocalObjectReferenceFromJSON(json['nodePublishSecretRef']), readOnly: !exists(json, 'readOnly') ? undefined : json['readOnly'], volumeAttributes: !exists(json, 'volumeAttributes') ? undefined : json['volumeAttributes'], }; } export function IoK8sApiCoreV1CSIVolumeSourceToJSON( value?: IoK8sApiCoreV1CSIVolumeSource | null, ): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { driver: value.driver, fsType: value.fsType, nodePublishSecretRef: IoK8sApiCoreV1LocalObjectReferenceToJSON(value.nodePublishSecretRef), readOnly: value.readOnly, volumeAttributes: value.volumeAttributes, }; }